1.编程序实现求1-1000之间的所有奇数的和并输出。


解法1:

    int sum=0;
for(int i=1;i<=1000;i++){
sum+=i%2?i:0;
}
printf("%d\n",sum/10);
6
6
 
1
    int sum=0;
2
    for(int i=1;i<=1000;i++){
3
        sum+=i%2?i:0;
4
    }
5
    printf("%d\n",sum/10);
6


解法2:

    int sum=0;
for(int i=1;i<1000;i+=2){
sum+=i;
}
printf("%d\n",sum/10);
5
5
 
1
    int sum=0;
2
    for(int i=1;i<1000;i+=2){
3
        sum+=i;
4
    }
5
 printf("%d\n",sum/10);

2。输入2个整数,求两数的平方和并输出。

    int a,b;
scanf("%d%d",&a,&b);
printf("%d\n",a*a+b*b);
3
3
 
1
    int a,b;
2
    scanf("%d%d",&a,&b);
3
    printf("%d\n",a*a+b*b);

3.已知函数y=f(x),编程实现输入一个x值,输出y值。

                   2x+1   (x<0)

y=    0     (x=0)

                   2x-1  (x>0)


    double x,y;
scanf("%lf",&x);
if(x<0){
y=2*x+1;
}else if(x>0){
y=2*x-1;
}else{
y=0;
}
printf("%f\n",y);//10
 
1
    double x,y;
2
    scanf("%lf",&x);
3
    if(x<0){
4
        y=2*x+1;
5
    }else if(x>0){
6
        y=2*x-1;
7
    }else{
8
        y=0;
9
    }
10
    printf("%f\n",y);//10


printf输出float和double都可以用%f,double还可以用%lf。
scanf输入float用%f,double输入用%lf,不能混用
2
2
 
1
printf输出float和double都可以用%f,double还可以用%lf。
2
scanf输入float用%f,double输入用%lf,不能混用

11.从键盘输入两个数,求出其最大值(要求使用函数完成求最大值,并在主函数中调用该函数)

#include <stdio.h>
int main(){
int x,y,max(int a,int b);
scanf("%d%d",&x,&y);
printf("最大值=%d\n",max(x,y));
}
int max(int a,int b){
return a>b?a:b;
}
 
1
#include <stdio.h>
2
int main(){
3
    int x,y,max(int a,int b);
4
    scanf("%d%d",&x,&y);
5
    printf("最大值=%d\n",max(x,y));
6
}
7
int max(int a,int b){
8
    return a>b?a:b;
9
}


6. 从键盘输入10个整数,统计其中正数、负数和零的个数,并在屏幕上输出。


    int a[10],x=0,y=0,z=0;
for(int i=0;i<10;i++){
scanf("%d",&a[i]);
if(a[i]>0){
x++;
}else if(a[i]<0){
y++;
}else{
z++;
}
}
printf("正数个数=%d;\n负数个数=%d;\n零的个数=%d;\n",x,y,z);
return 0;
 
1
    int a[10],x=0,y=0,z=0;
2
    for(int i=0;i<10;i++){
3
        scanf("%d",&a[i]);
4
        if(a[i]>0){
5
            x++;
6
        }else if(a[i]<0){
7
            y++;
8
        }else{
9
            z++;
10
        }
11
    }
12
    printf("正数个数=%d;\n负数个数=%d;\n零的个数=%d;\n",x,y,z);
13
    return 0;



#include <stdio.h>
void main( ) {
int a, i,p=0,n=0,z=0;
printf("please input number");
for(i=0;i<10;i++){
scanf("%d,",&a);
if (a>0){
p++;
}else if (a<0){
n++;
} else{
z++;
}
}
printf("正数:%5d, 负数:%5d,零:%5d\n",p,n,z);
}
 
1
#include <stdio.h>
2
void main( ) {
3
    int a, i,p=0,n=0,z=0;
4
    printf("please input number"); 
5
    for(i=0;i<10;i++){
6
        scanf("%d,",&a);
7
        if (a>0){
8
            p++;
9
        }else if (a<0){
10
            n++;
11
        } else{
12
            z++;
13
        }
14
    }
15
    printf("正数:%5d, 负数:%5d,零:%5d\n",p,n,z);
16
}

10.有一个分数序列:2/13/25/38/513/8……编程求这个序列的前20项之和。

解法1:

    double x[20],y[20];
x[0]=2.0;
x[1]=3.0;
y[0]=1.0;
y[1]=2.0;
double sum=x[0]/y[0]+x[1]/y[1];
for(int i=2;i<20;i++){
x[i]=x[i-1]+x[i-2];
y[i]=y[i-1]+y[i-2];
sum+=x[i]/y[i];
}
printf("%f\n",sum);
 
1
    double x[20],y[20];
2
    x[0]=2.0;
3
    x[1]=3.0;
4
    y[0]=1.0;
5
    y[1]=2.0;
6
    double sum=x[0]/y[0]+x[1]/y[1];
7
    for(int i=2;i<20;i++){
8
        x[i]=x[i-1]+x[i-2];
9
        y[i]=y[i-1]+y[i-2];
10
        sum+=x[i]/y[i];
11
    }
12
    printf("%f\n",sum);
@font-face{
font-family:"Times New Roman";
}

@font-face{
font-family:"宋体";
}

@font-face{
font-family:"微软雅黑";
}

@font-face{
font-family:"Tahoma";
}

@font-face{
font-family:"Symbol";
}

@font-face{
font-family:"Arial";
}

@font-face{
font-family:"黑体";
}

@font-face{
font-family:"Courier New";
}

@font-face{
font-family:"Wingdings";
}

@font-face{
font-family:"Calibri";
}

@font-face{
font-family:"Verdana";
}

@font-face{
font-family:"Cambria";
}

p.p0{
margin:0pt;
margin-bottom:0.0001pt;
margin-bottom:0pt;
margin-top:0pt;
text-align:justify;
font-size:10.5000pt; font-family:'Calibri'; }
@page{mso-page-border-surround-header:no;
mso-page-border-surround-footer:no;}@page Section0{
}
div.Section0{page:Section0;}

解法二:

//10.有一个分数序列:2/1,3/2,5/3,8/5,13/8,……编程求这个序列的前20项之和。
#include <stdio.h>
void main()
{
double a=1,b=2,sum=0;
for(int i=1;i<=20;i++){
double temp = b;
sum+= b/a;
b=a+b;
a=temp;
}
printf("%20f",sum);
}
 
1
//10.有一个分数序列:2/1,3/2,5/3,8/5,13/8,……编程求这个序列的前20项之和。
2
#include <stdio.h>
3
void main()
4
{
5
    double a=1,b=2,sum=0;
6
    for(int i=1;i<=20;i++){
7
        double temp = b;
8
        sum+= b/a;
9
        b=a+b;
10
        a=temp;
11
    }
12
    printf("%20f",sum);
13
}

求100~300间能被3整除的数的和。

    int sum=0;
for(int i=100;i<300;i++){
if(i%3==0){
sum+=i;
}
}
printf("%5d\n",sum);
 
1
    int sum=0;
2
    for(int i=100;i<300;i++){
3
        if(i%3==0){
4
            sum+=i;
5
        }
6
    }
7
    printf("%5d\n",sum);
@font-face{
font-family:"Times New Roman";
}

@font-face{
font-family:"宋体";
}

@font-face{
font-family:"微软雅黑";
}

@font-face{
font-family:"Tahoma";
}

@font-face{
font-family:"Symbol";
}

@font-face{
font-family:"Arial";
}

@font-face{
font-family:"黑体";
}

@font-face{
font-family:"Courier New";
}

@font-face{
font-family:"Wingdings";
}

@font-face{
font-family:"Calibri";
}

@font-face{
font-family:"Verdana";
}

@font-face{
font-family:"Cambria";
}

p.p0{
margin:0pt;
margin-bottom:0.0001pt;
margin-bottom:0pt;
margin-top:0pt;
text-align:justify;
font-size:10.5000pt; font-family:'Calibri'; }
@page{mso-page-border-surround-header:no;
mso-page-border-surround-footer:no;}@page Section0{
}
div.Section0{page:Section0;}

计算:1+12+123+1234+12345。

    int sum=0,temp=0;
for(int i=1;i<=5;i++){
temp=temp*10+i;
sum+=temp;
printf("%5d\n",temp);
}
printf("%5d\n",sum);
 
1
    int sum=0,temp=0;
2
    for(int i=1;i<=5;i++){
3
        temp=temp*10+i;
4
        sum+=temp;
5
        printf("%5d\n",temp);
6
    }
7
    printf("%5d\n",sum);
8

@font-face{
font-family:"Times New Roman";
}

@font-face{
font-family:"宋体";
}

@font-face{
font-family:"微软雅黑";
}

@font-face{
font-family:"Tahoma";
}

@font-face{
font-family:"Symbol";
}

@font-face{
font-family:"Arial";
}

@font-face{
font-family:"黑体";
}

@font-face{
font-family:"Courier New";
}

@font-face{
font-family:"Wingdings";
}

@font-face{
font-family:"Calibri";
}

@font-face{
font-family:"Verdana";
}

@font-face{
font-family:"Cambria";
}

p.p0{
margin:0pt;
margin-bottom:0.0001pt;
margin-bottom:0pt;
margin-top:0pt;
text-align:justify;
font-size:10.5000pt; font-family:'Calibri'; }
@page{mso-page-border-surround-header:no;
mso-page-border-surround-footer:no;}@page Section0{
}
div.Section0{page:Section0;}

求x的y次方

#include <stdio.h>
int main(){
int power(int x, int y);
printf("%d\n",power(2,3));
}
//求x的y次方
int power(int x, int y){
int sum=1;
for(int i =1;i<=y;i++){
sum*=x;
}
return sum;
}
 
1
#include <stdio.h>
2
int main(){
3
    int power(int x, int y);
4
    printf("%d\n",power(2,3));
5
}
6
//求x的y次方
7
int power(int x, int y){
8
    int sum=1;
9
    for(int i =1;i<=y;i++){
10
        sum*=x;
11
    }
12
    return sum;
13
}
@font-face{
font-family:"Times New Roman";
}

@font-face{
font-family:"宋体";
}

@font-face{
font-family:"微软雅黑";
}

@font-face{
font-family:"Tahoma";
}

@font-face{
font-family:"Symbol";
}

@font-face{
font-family:"Arial";
}

@font-face{
font-family:"黑体";
}

@font-face{
font-family:"Courier New";
}

@font-face{
font-family:"Wingdings";
}

@font-face{
font-family:"Calibri";
}

@font-face{
font-family:"Verdana";
}

@font-face{
font-family:"Cambria";
}

p.p0{
margin:0pt;
margin-bottom:0.0001pt;
margin-bottom:0pt;
margin-top:0pt;
text-align:justify;
font-size:10.5000pt; font-family:'Calibri'; }
@page{mso-page-border-surround-header:no;
mso-page-border-surround-footer:no;}@page Section0{
}
div.Section0{page:Section0;}

4.从键盘输入一个字符,判断它是否是英文字母。

#include <stdio.h>
void main()
{
char c;
printf("input a character:");
c=getchar();
if(c>='A'&&c<='Z'||c>='a'&&c<='z') {
printf("Yes\n");
}else{
printf("No\n");
}
}
 
1
#include <stdio.h>        
2
void main()
3
{
4
    char  c;
5
    printf("input a character:"); 
6
    c=getchar();
7
    if(c>='A'&&c<='Z'||c>='a'&&c<='z') {
8
        printf("Yes\n");
9
    }else{
10
        printf("No\n");
11
    }
12
}

13、从键盘输入n个数存放在数组中,将最小值与第一个数交换,输出交换后的n个数。

//13、从键盘输入n个数存放在数组中,将最小值与第一个数交换,输出交换后的n个数。
#include <stdio.h>
void main()
{
int n=0, a[n], temp,index=0;
printf("请输入需要输入数字的个数\n");
scanf("%d",&n);
printf("请输入需要输入数字序列\n");
//输入并查找最小值
for(int i=0;i<n;i++){
scanf("%d",&a[i]);
if(a[i]<a[index]){
index=i;
}
}
temp=a[0];
a[0]=a[index];
a[index]=temp;
printf("下面输出交换后数组\n");
for(int i=0;i<n;i++){
printf("%d\n",a[i]);
}
return 0;
}
25
 
1
//13、从键盘输入n个数存放在数组中,将最小值与第一个数交换,输出交换后的n个数。
2
#include <stdio.h>
3
void main()
4
{
5
    int n=0, a[n], temp,index=0;
6
    printf("请输入需要输入数字的个数\n");
7
    scanf("%d",&n);
8
    printf("请输入需要输入数字序列\n");
9
    //输入并查找最小值
10
    for(int i=0;i<n;i++){
11
        scanf("%d",&a[i]);
12
        if(a[i]<a[index]){
13
            index=i;
14
        }
15
    }
16
    temp=a[0];
17
    a[0]=a[index];
18
    a[index]=temp;
19
    printf("下面输出交换后数组\n");
20
    for(int i=0;i<n;i++){
21
        printf("%d\n",a[i]);
22
    }
23
    return 0;
24
}

C语言编程练习的更多相关文章

  1. C语言编程实现Linux命令——who

    C语言编程实现Linux命令--who 实践分析过程 who命令是查询当前登录的每个用户,它的输出包括用户名.终端类型.登录日期及远程主机,在Linux系统中输入who命令输出如下: 我们先man一下 ...

  2. 个人c语言编程风格总结

    总结一下我个人的编程风格及这样做的原因吧,其实是为了给实验室写一个统一的C语言编程规范才写的.首先声明,我下面提到的编程规范,是自己给自己定的,不是c语言里面规定的. 一件事情,做成和做好中间可能隔了 ...

  3. Linux下C语言编程实现spwd函数

    Linux下C语言编程实现spwd函数 介绍 spwd函数 功能:显示当前目录路径 实现:通过编译执行该代码,可在终端中输出当前路径 代码实现 代码链接 代码托管链接:spwd.c 所需结构体.函数. ...

  4. 混合语言编程:启用CLR(公共语言运行时编译)让C#调用C++

    前言 关于混合C#和C++的编程方式,本人之前写过一篇博客(参见混合语言编程:C#使用原生的Directx和OpenGL),在之前的博客中,介绍了在C#的Winform和WPF下使用原生的Direct ...

  5. Linux基础与Linux下C语言编程基础

    Linux基础 1 Linux命令 如果使用GUI,Linux和Windows没有什么区别.Linux学习应用的一个特点是通过命令行进行使用. 登录Linux后,我们就可以在#或$符后面去输入命令,有 ...

  6. LINUX下C语言编程基础

    实验二 Linux下C语言编程基础 一.实验目的 1. 熟悉Linux系统下的开发环境 2. 熟悉vi的基本操作 3. 熟悉gcc编译器的基本原理 4. 熟练使用gcc编译器的常用选项 5 .熟练使用 ...

  7. 第二章 C语言编程实践

    上章回顾 宏定义特点和注意细节 条件编译特点和主要用处 文件包含的路径查询规则 C语言扩展宏定义的用法 第二章 第二章 C语言编程实践 C语言编程实践 预习检查 异或的运算符是什么 宏定义最主要的特点 ...

  8. 华为C语言编程规范

    DKBA华为技术有限公司内部技术规范DKBA 2826-2011.5C语言编程规范2011年5月9日发布 2011年5月9日实施华为技术有限公司Huawei Technologies Co., Ltd ...

  9. 9 本免费的 Python 语言编程书籍(转载)

    9 本免费的 Python 语言编程书籍 原文地址:http://linuxtoy.org/archives/9-free-python-books.html 2010-03-03 Toy Poste ...

  10. linux 操作系统下c语言编程入门

    2)Linux程序设计入门--进程介绍 3)Linux程序设计入门--文件操作 4)Linux程序设计入门--时间概念 5)Linux程序设计入门--信号处理 6)Linux程序设计入门--消息管理  ...

随机推荐

  1. 【SpringCloud错误】错误记录

    org.springframework.beans.factory.BeanDefinitionStoreException: Failed to process import candidates ...

  2. sencha touch 百度地图扩展(2014-12-17)

    上个版本http://www.cnblogs.com/mlzs/p/3666466.html,新增了一些功能,修复了一些bug 扩展代码如下: Ext.define('ux.BMap', { alte ...

  3. [原]openstack-kilo--issue(十六) instance can't get ip 虚拟机不能得到ip(1)

    =====问题点:vm instance不能正常获取ip地址(此时用户是:admin) =======不一样的点:如果使用用户demo用户,启动一个vm,同样的image这个时候就能正确获取ip == ...

  4. Windows的文件类型关联

    在用脚本语言开发时尤其是在windows环境下发现想自动在命令行环境下运行脚本必须要带着相应的解释器的路径才行,不然就会提示无法找到对应的命令,于是乎在<学习Ruby>这本书中对于文件类型 ...

  5. Ubuntu系统中各种文件颜色的含义

    蓝 色:文件夹 ,ls -l或ll时可以看到权限部分的第1个字母是d红色:压缩文件   绿色:可执行文件,包括jar白色:文本文件红色闪烁:错误的符号链接淡蓝色:符号链接黄色:设备文件灰色:其它文件 ...

  6. [No0000FA]C# 接口(Interface)

    接口定义了所有类继承接口时应遵循的语法合同.接口定义了语法合同 "是什么" 部分,派生类定义了语法合同 "怎么做" 部分. 接口定义了属性.方法和事件,这些都是 ...

  7. flannel

    Docker跨主机容器间网络通信实现的工具有Pipework.Flannel.Weave.Open vSwitch(虚拟交换机).Calico实现跨主机容器间的通信.其中Pipework.Weave. ...

  8. Chrome浏览器如何调试移动端网页信息

    Chrome浏览器如何调试移动端网页信息 2017年08月12日 12:42:20 阅读数:835 最近在弄项目,用WebView加载一个页面,想追踪页面中一个按钮的点击事件.这个可能就需要调试这个页 ...

  9. 2015年蓝桥杯省赛A组c++第4题

    /* StringInGrid函数会在一个指定大小的格子中打印指定的字符串. 要求字符串在水平.垂直两个方向上都居中. 如果字符串太长,就截断. 如果不能恰好居中,可以稍稍偏左或者偏上一点. 下面的程 ...

  10. ssh agent-forward

    出于安全性考虑,服务器迁移后,将统一使用 SSH agent forwarding 方式登录所有服务器, 原则上所有 ssh 操作都要通过跳板机,而且跳板机上禁止存储一切私钥. 在此说明一下后续ssh ...