9条语句练习以及作业参考示例代码完整版.docx
- 文档编号:25524080
- 上传时间:2023-06-09
- 格式:DOCX
- 页数:20
- 大小:66.30KB
9条语句练习以及作业参考示例代码完整版.docx
《9条语句练习以及作业参考示例代码完整版.docx》由会员分享,可在线阅读,更多相关《9条语句练习以及作业参考示例代码完整版.docx(20页珍藏版)》请在冰豆网上搜索。
9条语句练习以及作业参考示例代码完整版
1.1练习
C语言大题
基础题已经做过的基础题,可以不用做,
先做基础题跟提高题
1.1.1基础题
1.输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是小写字母,则把它变成大写字母;其它字符不变,请编程。
2.输出所有100-500以内能被3整除且个位数字为7的整数。
#include
voidmain()
{
inti;
for(i=200;i<=400;i++)
if((i%3==0)&&((i-7)%10==0))
printf("%d\n",i);
printf("\n");
}
3.3025这个数具有一种独特的性质:
将它平分为两段,即30和25,使之相加后求平方,即(30+25),恰好等于3025本身。
请求出具有这样性质的全部四位数。
#include
intmain()
{
inti;
intab,cd;
for(i=1000;i<=9999;i++)
{
ab=i/100;
cd=i%100;
if((ab+cd)*(ab+cd)==i)
printf("%d\n",i);
}
}
4.一只a,b,c都是1位整数,求当三位整数abc.cba的和为1333是a,b,c的值。
#include
voidmain()
{
inta,b,c;
for(a=1;a<=9;a++)
{
for(b=0;b<=9;b++)
{
for(c=1;c<=9;c++)
if(a*100+b*10+c+c*100+b*10+a==1333)
printf("%d,%d,%d\n",a,b,c);
}
}
}
5.计算并输出200—400之间不能被3整除的整数的和。
#include
voidmain()
{
inti,sum=0;
for(i=200;i<=400;i++)
if(i%3!
=0)
sum=sum+i;
printf("%d\n",sum);
}
6.求100以内自然数中偶数之和。
#include
voidmain()
{
inti,sum=0;
inta[10];
for(i=0;i<=100;i++)
if(i%2==0)
sum=sum+i;
printf("sum=%d\n",sum);
}
7.计算并输出1-200以内不能被5整除的整数之和。
#include
voidmain()
{
inti,sum=0;
for(i=1;i<=200;i++)
if(i%5!
=0)sum=sum+i;
printf("%d\n",sum);
}
8.计算并输出200-400以内不能被7整除的整数的和。
#include
voidmain()
{
inti,sum=0;
for(i=200;i<=400;i++)
if(i%7!
=0)
sum=sum+i;
printf("sum=%d\n",sum);
}
9.输入一个正整数,输出他的阶乘。
#include
intmain()
{
intnum;
intsum=1;
inti;
printf("请输入一个十进制数据:
");
scanf("%d",&num);
for(i=1;i<=num;i++)
{
sum=sum*i;
}
printf("%d!
=%d\n",num,sum);
}
10.输入一个不多于10位的正整数,判断他是几位数,并逆序输出。
#include
intmain()
{
intnum;
intsum=0;
printf("请输入一个十进制数据:
");
scanf("%d",&num);
printf("%d逆序打印:
");
while(num)
{
printf("%d",num%10);
num/=10;
sum++;
}
printf("\n是%d位数\n",sum);
}
11.编写程序,输入任意一个1~7之间的整数,将他们转换成对应的英文单词。
例如:
1转换成Monday,7转换成Sunday。
#include
intmain()
{
intnum;
printf("请输入一个十进制数据:
");
scanf("%d",&num);
switch(num)
{
case1:
printf("Monday\n");break;
case2:
printf("Tuesday\n");break;
case3:
printf("Wednesday\n");break;
case4:
printf("Thursday\n");break;
case5:
printf("Friday\n");break;
case6:
printf("Saturday\n");break;
case7:
printf("Sunday\n");break;
default:
printf("数据不符合要求\n");
}
return0;
}
1.1.2提高题
1.计算1-3+5-7+9-...+97-99+101,打印结果
intmain()
{
inti;
intsum=0;
ints=1;
for(i=1;i<=101;i+=2)
{
sum=sum+i*s;
s=-s;
}
printf("%d\n",sum);
}
2.打印所有水仙花数。
所谓水仙花是指一个三位数,其各个位的数字的立方和等于该数。
153=1^3+5^3+3^3
intmain()
{
inti=100;
inta=0;
intb=0;
intc=0;
printf("水仙花数字有:
\n");
for(;i<=999&&i>=100;i++)
{
b=0;
c=i;
while(c!
=0)
{
a=c%10;
b=a*a*a+b;
c=c/10;
}
if(i==b)
{
printf("%d\n",i);
}
}
}
3.2/1,3/2,5/3,8/5,13/8,21/13,...求其前二十项之和
intmain()
{
doublea;
doubleb;
doublem=2;
doublen=1;
doublesum=0;
inti;
for(i=0;i<20;i++)
{
a=m;
b=n;
sum=sum+a/b;//sum+=2/1
m=a+b;//3
n=a;//2
}
printf("%f\n",sum);
}
4.编程计算1*2*3+3*4*5+。
。
。
。
+99*100*101的值。
#include
voidmain()
{
inti,sum=0;
for(i=1;i<=99;i=i+2)
sum=sum+i*(i+1)*(i+2);
printf("%d\n",sum);
}
5.求Sn=a+aa+aaa+...+aa..aa(n个a)之值,其中a是一个数字,n表示a的位数,例如:
2+22+222+2222+22222(此时n=5),n,a由键盘输入。
#include
voidmain()
{
inti,a,n;
longintsum=0,st=0;
printf("请输入a和n:
");
scanf("%d%d",&a,&n);
for(i=1;i<=n;i++)
{
st=st+a;
sum=sum+st;
a=a*10;
}
printf("%ld\n",sum);
}
6.终端输入一个正整数,判断该数据是否为素数
#include
#include
voidmain()
{
inti,m;
floatk;
printf("请输入一个整数:
");
scanf("%d",&m);
for(i=2;i<=k;i++)
if(m%i==0)break;
if(i>k)
printf("%disaprimenumber\n",m);
elseprintf("%disnotaprimenumber\n",m);
}
1.2作业题
1.自守数是指一个数的平方的尾数等于该数自身的自然数。
例如:
25=62576=57769376=87909376,请求出1~20000以内的自守数
intmain()
{
inti;
intm;
intk=1;
for(i=1;i<=20000;i++)
{
m=i;
k=1;
while(m)//对m进行位数分离
{
m/=10;
k*=10;
}
if(i*i%k==i)
{
printf("%d",i);
}
}
printf("\n");
}
2.将一个正整数分解质因数。
例如:
输入90,打印出90=2*3*3*5。
intmain()
{
intnum;
inti;
printf("请输入一个十进制数据;");
scanf("%d",&num);
printf("%d=",num);
for(i=2;i { if(num%i==0)//说明i是num的因子 { printf("%d*",i); num=num/i;//整除之后的数据 } else { i++;//如果不能整除,则继续往上加 } } if(i==num) { printf("%d",i); } } 3.一个数如果恰好等于它的因子之和,这个数就称为“完数”。 例如,6的因子为1、2、3,而6=1+2+3,因此6是“完数”。 编程序找出1000之内的所有完数,并按下面格式输出其因子: 6itsfactorsare1,2,3 intmain() { inti,j; intsum=0; for(i=1;i<=1000;i++) { //判断i是否为完数,找出i的因子,-->1~i-1因子 sum=0; for(j=1;j { if(i%j==0)//j是i的因子 { sum=sum+j; } }//for循环结束,i的所有的因子都已找完 if(sum==i)//因子之和是否跟本身相等 { printf("%ditsfactorsare",i); for(j=1;j { if(i%j==0)//j是i的因子 { printf("%d",j); } } printf("\n"); } } } 4.一个皮球从100米高度自由落下,每次落地后反弹回原高度的一半再落下,再反弹。 求当它第10次落地时,共经过了多少米,第10次反弹多高? #include voidmain() { inti; floatsum=100.0,h=50; for(i=2;i<=10;i++) { sum=sum+2*h; h=h/2; } printf("%f,%f\n",sum,h); } 5.假设unsignedchardata=0xB6;//10110110 unsignedcharreceive; 1)如何将其data数据一位一位打印在显示终端上,先打印高位, 2)如何将其data数据一位一位写到receive中,先接收高位 intmain() { unsignedchardata=0x89; inti; unsignedcharDI; //模拟发送 for(i=0;i<8;i++) { DI=data>>7;// printf("%d",DI); data<<=1; } printf("\n"); data=0xBD; unsignedcharreceive=0; //模拟接收,将data一位一位写入receive中,先写高位 for(i=0;i<8;i++) { if((data&(1<<7-i))! =0) { receive|=(1<<7-i); } } printf("%#X\n",receive); return0; } 6.打印金字塔,数字金字塔的层数由n控制,n的范围为[1~9]如果超过该范围,提示用户重新输入 假设n=5,则打印如下的金字塔 1 22 333 4444 55555 intmain() { inti,j,k; intn; printf("请输入金字塔的层数(1~9): "); scanf("%d",&n); //数据输入有效值 if(n<1||n>9) { printf("输入有误\n"); return0; } for(i=1;i<=n;i++) { for(k=1;k<=n-i;k++) { printf(""); } for(j=1;j<=i;j++) { printf("%d",i); } printf("\n"); } } 7.如下所示 a)b)c)d) 通过一个*号实现 要求,用字母ABCD分别代表不同的图形 A: 代表正方形 B: 平行四边形 C: 直角三角形 D: 等边三角形 Q: 退出图形打印,结束 用户根据提示输入不同的字母,打印不同的图形,或者结束打印 intmain() { inti,j,k; charch; printf("A: 代表正方形\n"); printf("B: 平行四边形\n"); printf("C: 直角三角形\n"); printf("D: 等边三角形\n"); printf("Q: 退出图形打印,结束\n"); while (1) { printf("请输入操作的指令: "); ch=getchar(); //getchar(); fflush(stdin); switch(ch) { case'A': for(i=1;i<=5;i++) { for(j=1;j<=9;j++) { printf("*"); } printf("\n"); } break; case'B': for(i=1;i<=5;i++) { for(k=1;k<=i-1;k++) { printf(""); } for(j=1;j<=9;j++) { printf("*"); } printf("\n"); } break; case'C': for(i=1;i<=5;i++) { for(j=1;j<=i;j++) { printf("*"); } printf("\n"); } break; case'D': for(i=1;i<=4;i++) { for(k=1;k<=4-i;k++) { printf(""); } for(j=1;j<=2*i-1;j++) { printf("*"); } printf("\n"); } break; case'Q': printf("程序结束\n");return0; default: printf("指令输入有误,请重新输入! \n"); } printf("--------------------------\n"); } }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语句 练习 以及 作业 参考 示例 代码 完整版