国家计算机2级上机模拟Word文档下载推荐.docx
- 文档编号:20802620
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:26
- 大小:20.63KB
国家计算机2级上机模拟Word文档下载推荐.docx
《国家计算机2级上机模拟Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《国家计算机2级上机模拟Word文档下载推荐.docx(26页珍藏版)》请在冰豆网上搜索。
/*$ERROR2$*/~~~flag=0~~~
break;
if(flag==1)
{s+=i;
n++;
if(n!
=10)/*$ERROR3$*/~~~n==0~~~
s=%d\n"
s);
编程:
计算所有水仙花数之和(一个三位数各位数字立方和=其本身)
voidPRINT(ints)
FILE*out;
if((out=fopen("
C:
\\24000101\\RESULT.DAT"
w+"
))!
=NULL)
fprintf(out,"
s=%d"
fclose(out);
ints,a,b,c;
s=0;
for(a=1;
a<
=9;
a++)
for(b=0;
b<
b++)
for(c=0;
c<
c++)
if(a*100+b*10+c==a*a*a+b*b*b+c*c*c)s+=a*100+b*10+c;
PRINT(s);
模拟2
改错:
输入一个百分制的成绩,根据成绩输出相应的等级
inta;
scanf("
%d"
a);
/*$ERROR1$*/~~~scanf("
%d'
&
a);
~~
if(a<
0||a>
100)
dataerror\n"
else
elseif(a>
=90)printf("
A\n"
/*$ERROR2$*/~~~if(a>
=90)~~~
=80)printf("
B\n"
=70)printf("
C\n"
=60)printf("
D\n"
E\n"
/*$ERROR3$*/~~~elseprintf("
~~~
填空:
输入一个大于1的正整数,将其分解成质因数的乘积,并按照以下的格式输出:
Input90Output90=2*3*3*5
intn,i;
Inputn:
__&
n__);
Output:
%d="
n);
i=2;
while(i<
n)
if(n%i==0)
{printf("
%d*"
i);
n=n/i;
/*$BLANK2$*/
i++;
%d\n"
n);
编程:
百马百担
voidPRINT(inta,intb,intc)
big=%d,mid=%d,small=%d\n"
a,b,c);
\\24000103\\RESULT.DAT"
big=%d,mid=%d,small=%d"
inta,b,c;
for(a=1;
=25;
for(b=1;
=33;
for(c=5;
c=c+5)
if(a*4+b*3+c/5==100&
&
a+b+c==100)
PRINT(a,b,c);
模拟3
在屏幕上输入以下图形(*号)
inti,j;
i=1;
/*$ERROR1$*/~~i=0~~
5)
j=0;
while(j<
i)/*$ERROR2$*/~~while(j<
=i)
*"
j++;
\n"
i=4;
while(i>
0)
j=1;
/*$ERROR3$*/~~i--
程序填空
从键盘输入一个十进制的数,统计数码为2的个数。
longcount,n,t;
count=0;
%ld"
n);
n=(n>
=0?
n:
-n);
do
t=n%10;
if(t==2)
count++;
n=n/10;
while(n>
0);
count=%ld\n"
count);
程序设计
计算10000以内9的偶数倍数之和。
即SUM=18+36+54+...+9990
输出格式SUM=2345678
voidPRINT(longsum)
sum=%ld\n"
sum);
\\24000104\\RESULT.DAT"
sum=%ld"
longsum=0;
inti;
for(i=18;
=10000;
i=i+18)
sum=sum+i;
PRINT(sum);
模拟4
改错
统计所有的三位正整数中各个数位上数字之和是11的数的个数。
如119128245等式满足该条件的数。
inti,j,k,l,s,count;
count=1;
/*$ERROR1$*/~~~count=0
for(i=100;
=999;
j=i;
while(j>
1)/*$ERROR2$*/~~while(j>
s=s+j/10;
/*$ERROR3$*/~~s=s+j%10
j=j/10;
if(s==11)count=count+1;
求100~400之间不能被5整除且个数是3的数之和。
inti,s;
=400;
if(i%5!
=0)
if(i%10==3)/*$BLANK2$*/
s=s+i;
根据下列式子,计算F10的值(要求使用循环实现)
F1=1
F2=1
F3=3*F2-F1
F4=3*F3-F2
...
F10=3*F9-F9
输出格式:
F10=2134
16:
472010-6-15#include<
voidPRINT(longf)
F10=%ld\n"
f);
F10=%ld"
longf,f1,f2;
f1=f2=1;
for(i=3;
=10;
f=3*f2-f1;
f1=f2;
f2=f;
PRINT(f);
模拟5
输出数组中最小元素及其下标值(数组中元素各部相同)
#include<
inta[10]={-3,2,-5,4,9,0,8,7,-6,1};
intt,min,i;
min=0;
/*$ERROR1$*/~~~min=a[0]
t=1;
/*$ERROR2$*/~~~t=0
10)
if(min>
a[i])
min=a[i];
i=t;
/*$ERROR3$*/~~t=i
min=%d,address=%d\n"
min,t);
从键盘输入10个整数并存入一维数组中,查找其中第一个负数。
如果能找到则输出这个负数及其下标,否则输出“NOTFOUND"
voidmain()
inti,a[10];
Inputarray:
for(i=0;
10;
a[i]);
if(a[i]<
%d,%d\n"
a[i],i);
if(i>
=10)/*$BLANK3$*/
NotFound!
计算1+2+3+4+...+<
2000的最大的n的值(要求使用循环实现)
输出格式;
n=23
voidPRINT(intn)
n=%d\n"
\\24000105\\RESULT.DAT"
n=%d"
intn=0,s=0;
while(s<
2000)
s=s+(++n);
n--;
PRINT(n);
模拟6
将数组中的数按从小到大排序后输出。
inta[11]={3,9,-5,20,80,42,28,-19,0,90,22};
inti,j,k;
for(j=0;
10-j;
if(a[i]<
a[i+1])/*$ERROR1$*/~~~if(a[i]>
a[i+1])
k=a[i+1];
/*$ERROR2$*/~~~k=a[i]
a[i]=a[i+1];
a[i+1]=k;
11;
%5d"
a+i);
/*$ERROR3$*/~~printf("
a[i])
将3*3的矩阵两条对角线元素的总和S。
inta[3][3],i,j,s=0;
for(i=0;
3;
for(j=0;
a[i][j]);
if((i==j)||(i+j==2))/*$BLANK2$*/
s+=a[i][j];
/*$BLANK3$*/
printf("
根据下式子求S的值(要求用循环实现);
S=1/2-2/3+3/4-4/5+5/6-6/7+...+99/100
voidPRINT(floats)
s=%.4f\n"
\\24000106\\RESULT.DAT"
s=%.4f"
floats;
inti,flag=1;
s=0;
for(i=1;
=99;
s=s+1.0*i/(i+1)*flag;
flag=-flag;
PRINT(s);
模拟7
对学生的记录数据统计不及格的人数并输出不及格学生的信息
structstudent
{intnum;
charname[12];
intscore;
};
structstud[5]={{101,"
Liping"
45},/*$ERROR1$*/~~structstudentstud[5]
{102,"
Huhua"
62},
{103,"
Hefang"
92},
{104,"
Chengli"
87},
{105,"
Liuzhi"
58}};
inti,n=0;
num\tname\tscore\n"
i=0;
if(score<
60)/*$ERROR2$*/~~~if(stud[i]score<
60)
%d\t%s\t%d\n"
stud[i].num,stud[i].name,stud[i].score);
n--;
/*$ERROR3$*/~~~n++
9个评委给某个参赛选手打分(分数存于数组中),去掉一个最高分和一个最低分,求该参赛选手的平均分。
floata[9],max,min,ave;
9;
%f"
max=min=ave=a[0];
ave+=a[i];
if(max<
max=a[i];
elseif(min>
ave=(ave-max-min)/7;
Mark=%.3f\n"
ave);
voidPRINT(longs)
s=%ld\n"
\\24000107\\RESULT.DAT"
s=%ld"
intn=30;
longs=0;
inti,j;
=n;
for(j=1;
=i;
s=s+j;
模拟8
在屏幕上输出以下图形:
1
222
33333
4444444
chara[7]="
"
4;
i*2+1;
k=3-i+j;
a[k]=1+i;
/*$ERROR1$*/~~~a[k]='
1'
+i
7;
%c"
a+j);
/*$ERROR2$*/printf("
a[j])
/n"
/*$ERROR3$*/~~~~printf('
从键盘输入一个整数,输出一个对应的英文星期单词。
若输入的整数在1~7指出,则输出“Error"
.
{inta;
Inputa:
switch(a)
{case1:
Monday\n"
break;
case2:
Tuesday\n"
case3:
Wednesday\n"
case4:
Thursday\n"
case5:
Friday\n"
case6:
Saturday\n"
case7:
Sunday\n"
break/*$BLANK2$*/
default:
Error!
某人摘下一些桃子,卖掉三分之二,并吃了两个;
第二天卖掉剩下的三分之二,又吃了两个;
第三天‘第四天’第五天‘第六天都如此办理,第八天一看,发现只剩五个桃子哦了。
求此人共摘了多少个桃子(要求用循环实现)。
\\24000109\\RESULT.DAT"
inti,s=5;
8;
s=(s+2)*3;
模拟9
将字符串strl和字符串str2合并成一个新字符str,然后输出str.
string.h>
charstr1[30],str2[20],str[60];
inti=0,j=0;
Inputthefirststring:
gets(str1);
Inputthesecondstring:
gets(str2);
while(str1[i])
str[i]=str1[i];
while(str2[j])
str[i++]=str2[j];
/*$ERROR1$*/~~~j++
str[i]="
\0"
/*$ERROR2$*/~~~str[i]=‘、0’
str:
%c\n"
str);
/*$ERROR3$*/~·
~~%s
从键盘输入10个整数存入数组a中,调用fsum函数对数组中的所有数值求和并输出。
intfsum(intb[],intn)
inti,sum;
sum=0;
n;
sum+=b[i];
returnsum;
inta[10],i,sum;
++i)
sum=fsum(a,10);
sum=%d\n"
一个大于200的正整数,若加上1是5的倍数,若加上2是6的倍数吗,若加上3是7的倍数,求满足这个条件的最小的正整数。
\\24000110\\RESULT.DAT"
intn;
n=200;
while
(1)
if(n=1%5==0&
n+2%6==0&
n+3%7==0)
else
n++;
模拟10
下面程序通过指针操作,从键盘输入10个整数存于数组中,将数组元素的值按逆序输出。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 国家 计算机 上机 模拟