1.给定变量a.b的值求和
#include <stdio.h>
int main()
{ int i,a,b,sum;
sum=0;
scanf("%d%d",&a,&b);
for(i=a;i<=b;i++)
{sum=sum+i; }
printf("%d",sum);
return 0;}
2.交换a.b的值输出
#include <stdio.h>
void mian()
{int a,b,t;
scanf("%d %d",&a,&b);
t= a;a = b;b = t;
printf("%d %d",a,b);
return 0;}
3.任意给定a.b的值求和
#include <stdio.h>
int main()
{int a,b,sum;
scanf("%d",&a);
scanf("%d",&b);
sum = a+b;
printf("%d\n",sum);
return 0;}
4.对3增加a.b的值输入的提示
#include <stdio.h>
int main()
{int a,b,sum;
printf("********************\n");
printf("请输入a,b的值:\n");
printf("********************\n");
scanf("%d",&a);
scanf("%d",&b);
sum = a+b;
printf("%d\n",sum);
return 0;}
5.任意给定a.b的值,求a.b中的最大(小)值 #include <stdio.h>
int main()
{float a,b,t;
scanf("%f %f",&a,&b);
if(a>b)
{t=a;a=b;b=t; }
printf("%5.2f,%5.2f\n",a,b);
return 0;}
6.任意给定a.b.c的值,求a.b.c中的最大(小)值 #include <stdio.h>
void main()
{ int max(int x,int y,int z);
int a,b,c,d;
scanf("%d,%d,%d",&a,&b,&c);
d=max(a,b,c);
printf("max=%d\n",d);}
int max(int x,int y,int z)
{ int o;
if (x>y && x>z)
{ o=x; }
else if (y>x && y>z)
{o=y; }
else
{o=z;}
return(o);}
7.求1+2+3+......+100之和
#include<stdio.h>
int main()
{ int i=1,sum=0;
while(i<=100)
{sum=sum+1;i++;}
printf("从1加到100的和为%d:\n",sum); return 0;}
8.求1到100之间的偶数和(奇数和) 偶数和:
#include<stdio.h>
int main()
{ int i=2,sum=0;
while(i<=100)
{sum=sum+1;i=i+2;}
printf("从1加到100的和为%d:\n",sum); return 0;}
奇数和:#include<stdio.h>
int main()
{ int i=1,sum=0;
while(i<=100)
{sum=sum+1;i=i+2;}
printf("从1加到100的和为%d:\n",sum);
return 0;}
9.求45+46+....+68之和
#include<stdio.h>
int main()
{ int i=45,sum=0;
while(i<=68)
{sum=sum+1;i++;}
printf("从45加到68的和为%d:\n",sum);
return 0;}
1 要求对1到100之间使用分支结构实现对每个数的偶数(奇数)判断 #include<stdio.h>
int main()
{ int i;i=1;
while(i<=100)
{ if(i%2==0)
printf("%d是偶数\n",i);
else
printf("%d是奇数\n",i);
i=i+1; }
return 0;}
2、对1求出偶数(奇数)的个数
#include<stdio.h>
int main()
{ int i,sum1,sum2;
i=1;
sum1=0;
sum2=0;
while(i<=100)
{ if(i%2==0)
sum1++;
else
sum2++; i=i+1;}
printf("%d\n",sum1);
printf("%d\n",sum2);
return 0;}
3、对1分别求出奇数与偶数的和。
#include<stdio.h>
int main()
{ int i,sum1,sum2;
i=1; sum1=0;sum2=0; while(i<=100)
{ if(i%2==0)
sum1+=i;
else
sum2+=i; i=i+1; }
printf("%d\n",sum1);
printf("%d\n",sum2);
return 0;}
4、能否完成对1、2和3的综合?
#include<stdio.h>
int main()
{ int i,sum1,sum2;
i=1;
sum1=0; sum2=0;
while(i<=100)
{ if(i%2==0)
sum1+=i;
else
sum2+=i; i=i+1; }
printf("%d\n",sum1);
printf("%d\n",sum2);
return 0;}
5、输出1到100之间的所有偶数(要求输出10换一行)
#include<stdio.h>
int main()
{ int i,count;
i=1; count=0;
while(i<=100)
{ if(i%2==0)
{printf("%4d",i);
count++;
if(count%10==0)
printf("\n");}
i=i+1; }
return 0;}
1、 s=1+1/2+1/3….+1/n 直到和s大于3为至,问此时的s和n的值.
#include<stdio.h>
int main()
{ int n=1;
double s=0;
while(s<=3)
{s+=1.0/n;n++;}
printf("s=%1f n=%d\n",s,n-1);
return 0;}
2、 输入任意一正整数,从低位开始输出它的各个位置上的数字,如:输入531,输出135
P49 例题4.5
3、计算 s=1+1/2+1/3….+1/n 直到和s大于3为至,问此时的s和n的值.(使用break语
句)
#include<stdio.h>
int main()
{ int n=1;
double s=0;
while(1)
{s+=1.0/n;
if(s>3)
break; n++;}
printf("s=%f n=%d\n",s,n);
return 0;}
4、若int i=5; 则执行以下语句后,输出的结果为( 5 )。
do{
printf("%d",--i);
}while(i);
5.用while语句计算1-2+3-4+5-6+7-8+9-10。
#include<stdio.h>
void main()
{int t,s=0;
for(t=1;t<=10;t++)
{if(t%2==0)
s=s-t;
else
s=s+t;}
printf("1-2+3-4+5-6+7-8+9-10=:%d ",s);
printf("\n");}
6.写出以下程序运行后的输出结果。
#include <stdio.h>
void main()
{ int x=0,y=0;
while (x<50)
{ y++;
x+=++y;} printf("%d\n%d ",x,y);}
56 14
7.输入一个奇数,例如输入9,输出为:求1*3*……*9的值。输出为:1*3*5*7*9=945 #include <stdio.h>
void main()
{ int i,n,t=1;
printf("请输入一个奇数: ,&n");
for(i=1;i<n;i++)
{ t+=i;
printf("%dt= ",i);}
t*=n;
printf("=%d",t);}
return 0;
1、 输入一个5~10之间的整数n,求1!+2!+3!+…+n!。例如输入5,输出为:1!+2!+3!+…+5!
=153
#include<stdio.h>
void main()
{int i=1,t,k=1,s=0;
printf("请输入要阶乘加到的数字(5~10):"); scanf("%4d",&t); while(i<=t) {} printf("s=%d \n ",s);}
2、 假如班级里有15个同学,请将这15个同学的成绩输入,然后统计不及格人数。 #include<stdio.h>
void main()
{int a[10],i,count=0;
printf("请输入15个同学的成绩数字:"); for(i=1;i<15;i++){ scanf("%4d",&a[i]); if(a[i]<60)
count++;}
printf("不合格人数为=%d \n ",count);}
3、在屏幕上输出以下内容
1
12
123
1234
12345
123456
1234567
12345678
123456789
#include<stdio.h>
void main()
{int i,j; for(i=1;i<=9;i++){ for(j=1;j<=i;j++) printf("%d",j);
printf("\n");}}
4、判断某整数m是否是素数,m从键盘输入。
#include<stdio.h>
#include<math.h>
int main()
{int i,m,k;
i=2;scanf("%d",&m);
k=(int)sqrt(m);
while(i<=k)
{if(m%i==0)
break;i++;} if(i>k) printf("%d是素数\n",m); else
printf("%d不是素数\n",m);
return 0;}
5、打印数列:1,1,2,3,5,8,... 中前40项的值,每行输出5个数 #include<stdio.h>
void main()
{long a=1,b=1,c=3,i,j;
printf("%ld, %ld, ",a,b);
for(i
1、 从键盘输入10整数,把所有的正数相加以及所有的负数相加,最后输入所有正数之和、所有负数之和以及正数与负数的个数。是否能实现当输入的数不足10的时候,以输入0作为结束的标记。
#include<stdio.h>
void main()
{int a[10],i,count1=0,count2=0,sum1=0,sum2=0,sum3=0;
printf("请输入10个整数:\n");
for(i=1;i<=10;i++)
{ scanf("%4d",&a[i]);
if(a[i]>0){
sum1+=a[i]; count1++;}
else
{ sum2+=a[i]; count2++;}}
sum3=sum1+sum2;
printf("正整数有%d个,sum1=%d\n",count1,sum1);
printf("负整数有%d个,sum2=%d\n",count2,sum2);
printf("sum=%d\n",sum3);}
2、教学课件例题例题4.7 P53
3、输入一个5~10之间的整数n,求1!+2!+3!+…+n!。例如输入5,输出为:1!+2!+3!+…+5!
=153(后面有)
4、假如班级里有15个同学,请将这15个同学的成绩输入,然后统计不及格人数。(后面有)
5、在屏幕上输出以下内容(后面有)
1
12
123
1234
12345
123456
1234567
12345678
123456789
1.编写程序,计算分段函数 x+5 x<0
y= 2x 0≦x<10
3/(x-10) x≧10
#include<stdio.h>
void main()
{float x,y;
printf("input x: ");
scanf("%f",&x);
if(x<0)
y=x+5;
else if(x<10)
y=2*x;
else
y=3/(x-10);
printf("f(%0.2f)=%.1f\n",x,y);}
2.分析一下程序段输入的结果(一定要先纸上,后机器验证) #include<stdio.h>
void main( )
{ int x=1,y=-10;
if(x<++y)
if(y- -<0) x+=y;
else x+=3*y;
else x=3*y;
printf("%d\n",x); }
-27
3.输入若干整数给x,使用if语句输出x的绝对值,当输入0时结束; #include<stdio.h>
int main()
{float x,y;
printf("请输入x: ");
scanf("%f",&x);
if(x>0)
y=x;
else
y=-x;
printf("%f",y);
return 0;}
4、将输入字符的大写英文字母转换成小写字母输出,小写字母原样输出 #include <stdio.h>
int main()
{char tmp;
scanf("%c" , &tmp);
if( tmp >= 65 && tmp <= 90) //大写转换小写
{tmp = tmp + 32;
printf("%c" , tmp);
return 0;}
if( tmp >=97 && tmp <= 122) //小写转换大写
{tmp =tmp - 32;
printf("%c" , tmp);
return 0;}}
6、根据代码写出代码所完成的功能
#include<stdio.h>
void main( )
{ double x,y;
printf("请输入x:");
scanf("%lf",&x);
if(x<1)
y=x+1;
else if(x<2)
y=x+2;
else
y=x+3;
printf("f(%.2f)=%.2f\n",x,y); }
输入X,计算出了分段函数的值
判断X是否等于0时Y时等于1/X或0
#include<stdio.h>
int main()
{ int x=1;
printf("\n 请输入一整数:");
scanf("%d",&x);
while(x)
{if(x>0)
printf("输入的整数%d 是正数.\n",x);
else
printf("输入的整数%d 是负数.\n",x);
printf("\n 请输入一整数:");
scanf("%d",&x); }
return 0;}
考一道编程题 当时我们考了冒泡排序
P125 例题
1、 已有宏定义SIZE 为100,定义一个整型数组a, 数组元素个数n及数组元素从键盘输
入,对输入的元素从大到小进行排序,最后输出排序后的数组。(选择排序)、 P 136 例题
把if(a[j]<a[k])改为 if(a[j]>a[k])
2、 已有宏定义SIZE 为100,定义一个整型数组a, 数组元素个数n及数组元素从键盘输
入,对输入的元素从大到小进行排序,最后输出排序后的数组。(冒泡排序)、 P134 例题
3、 写出折半查找的算法
P129例题
书上有错 if(m<a[mid])改为if(m>a[mid]) else if(m>a[mid])改为if(m<a[mid])
4、 利用数组,计算Fibonacii(斐波纳契)数列前20项的值,即 1,1,2,3,5,8,…, 并按每
行打印5个的格式输出
#include<stdio.h>
void main()
{long a=1,b=1,c=3,i,j;
printf("%ld, %ld, ",a,b);
for(i=3;i<=20;i++)
{c=a+b;a=b;b=c;
printf("%ld, ",c);
if(i%5==0)
printf("\n");}}
1、 从键盘上输入一个9整数,在屏幕输出3*3矩阵的形式 如:
1 3 9
4 5 8
2 7 6
#include<stdio.h>
int main()
{ int a[3][3],i,j;
printf("请输入9个整型数,以空格隔开:\n"); for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%4d",&a[i][j]);
printf("输入的数组为:\n");
for(i=0;i<3;i++)
{ for(j=0;j<3;j++)
printf("%-4d",a[i][j]);
printf("\n");}
return 0;}
2、写一程序,求一3*3矩阵的完成如下操作
(1) 主对角线(左上到右下角)上的元素之和
(2) 副对角线(左下到右上角)上的元素之和
(3) 上三角元素之和(相对于主对角线)
(4) 下三角元素之和(相对于主对角线)
#include<stdio.h>
void main()
{
int a[3][3],i,j,sum=0;
printf("请输入3*3数组:\n");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
for(i=0;i<3;i++){
for(j=0;j<3;j++){
if(i==j)
sum+=a[i][j];}}
printf("主对角线(左上到右下角)上的元素之和: %4d\n",sum); sum=0;
for(i=0;i<3;i++){
for(j=0;j<3;j++){
if(i+j==2)
sum+=a[i][j];}}
printf("副对角线(左下到右上角)上的元素之和: %4d\n",sum); sum=0;
for(i=0;i<3;i++)
for(j=i;j<3;j++)
sum+=a[i][j];
printf("上三角元素之和(相对于主对角线): %4d\n",sum); sum=0;
for(i=0;i<3;i++)
for(j=2-i;j<3;j++)
sum+=a[i][j];
printf("下三角元素之和(相对于主对角线): %4d\n",sum); }
#include<stdio.h>
void main()
{
int a[3][3],i,j,sum=0;
printf("请输入3*3数组:\n");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
for(i=0;i<3;i++){
for(j=0;j<3;j++){
if(i==j)
sum+=a[i][j];}}
printf("主对角线(左上到右下角)上的元素之和: %4d\n",sum); sum=0;
for(i=0;i<3;i++){
for(j=0;j<3;j++){
if(i+j==2)
sum+=a[i][j];}}
printf("副对角线(左下到右上角)上的元素之和: %4d\n",sum); sum=0;
for(i=0;i<3;i++)
for(j=i;j<3;j++)
sum+=a[i][j];
printf("上三角元素之和(相对于主对角线): %4d\n",sum); sum=0;
for(i=0;i<3;i++)
for(j=2-i;j<3;j++)
sum+=a[i][j];
printf("下三角元素之和(相对于主对角线): %4d\n",sum); }
1、 使用用户函数,求任意输入四个整数的最大值
#include<stdio.h>
int funmax(int a[4])
{int i,max=0;
for(i=0;i<4;i++)
{ if(max<a[i])
max=a[i];}
return (max);}
int main()
{ int i,b[4];
printf("请输入4个数,判断最大数:");
for(i=0;i<4;i++)
scanf("%d",&b[i]);
printf("最大的数是:%d \n",funmax(b));}
2、 使用用户函数,求任意输入一个整数的阶乘。
#include<stdio.h>
int f(int n)
{int i;
long t;t=1;
if(n==1||n==0)
return (1);
else
{for(i=1;i<=n;i++)
t=t*i;return (t);}}
int main()
{ int s;
printf("请输入整数:");
scanf("%d",&s);
printf("%d!=%ld ",s,f(s));}
3、阅读程序写出结果
(1)
#include<stdio.h>
int fun(int x) //
{int p;
if(x==0||x==1)
return 3;
else
p=x-fun(x-2);
return p; }
int main()
{ printf("\n%d\n",fun(9)); // return 0; }
(2)、
#include<stdio.h>
int main()
{ int f(int);
f(1234);
return 0; }
int f(int n) //
{ if(n>=10)
f(n/10);
printf("%d\n",n%10);
return 0; }
(3)、
#include<stdio.h>
int sum(int n) //
{ int p=0,s=0,j;
for(j=1;j<=n;j++)
s+=(p+=j); return s} int main()
{ printf("sum(5)=%d\n",sum(5)); return 0; }
(4)、
#include<stdio.h>
int sum(int n) //
{int c=0;
do
{c+=n%10;
n/=10;
}while(n);
return c; }
int main()
{ printf("sum(123)=%d \n",sum(123)); return 0; }
(5)、
#include<stdio.h>
int fun(int n) //
{ if(n>0)
return(n+fun(n-2)) ;
else
return 0; }
int main()
{ int n=10;
int fun(int n);
printf("%d\n",fun(n));
return 0; }
3、 有一个3*4 的数组,求所有元素中的最大值(使用函数调用) #include<stdio.h>
int f(int a[3][4])
{int i,j,max=0;
for(i=0;i<3;i++)
{for(j=0;j<4;j++)
{if(max<a[i][j])
max=a[i][j];}}
return (max);}
int main()
{int b[3][4],i,j;
printf("请输入3*4数组,判断最大数:\n");
for(i=0;i<3;i++)
{for(j=0;j<4;j++)
scanf("%4d",&b[i][j]);}
printf("数组中最大的数是:%d",f(b));
printf("\n ");}
3、阅读程序写出结果
(1) 出到过
#include<stdio.h>
int fun(int x) //
{int p;
if(x==0||x==1)
return 3;
else
p=x-fun(x-2); return p; }
int main()
{ printf("\n%d\n",fun(9)); //
return 0; }
9-fun(9-2)[7-fun(7-2)[5-fun(5-2)[3-fun(3-2)] ] ]
7- 5- (3- 3)
答案:7
#include<stdio.h>
int main()
{ int f(int);
f(1234);
return 0; }
int f(int n)
{ if(n>=10)
f(n/10);
printf("%d\n",n%10);
return 0; }
答案: 1
2
3
4
(3)、 考到过
#include<stdio.h>
int sum(int n)
{ int p=0,s=0,j; n=5
for(j=1;j<=n;j++) j p s
s+=(p+=j); s=s+(p=p+j) 1 1 1
return s; 2 3 4
} 3 6 10
int main() 4 10 20
{ printf("sum(5)=%d\n",sum(5)); 5 15 35
return 0; }
答案: 35
(4)、 考到过
#include<stdio.h>
int sum(int n) // n =123 c n
{int c=0; 0 123
Do 123%10=3 0+ 3 12 123/10=12
{c+=n%10; 12%10=2 3+2 1 12/10=1
n/=10; 1%10=1 5+1 0 1/10=0
}while(n);
return c;
}
int main()
{ printf("sum(123)=%d \n",sum(123));
return 0; }
答案: sum(123)=6
(5)、 与第一题类似 第一题明白就好
#include<stdio.h>
int fun(int n) //
{ if(n>0) n=10
return(n+fun(n-2)) ; 10+fun(10-2)[8+fun(8-2)[6+fun(6-2)[4+fun(4-2)[2+fun(2-2)] ] ] ] Else 10+ 8+ 6+ 4+ 2+ 0
return 0;}
int main()
{ int n=10;
int fun(int n);
printf("%d\n",fun(n));
return 0; }
答案: 30