c语言机试评分标准,C语言机试参考试题及其讲解

#include

//********************************************************************************

//示例

//********************************************************************************

void exe0()

{

printf("/n : 任意输入10个数,求和./n");

printf(" :  int sum(int *a)./n");

printf(" :在主调函数中输入这10个数,调用函数,输出结果./n");

//我的解答

char s1[80],s2[40];

int i=0,j=0;

printf("请输入第一个字符串:");

scanf("%s",s1);

printf("请输入第二个字符串:");

scanf("%s",s2);

while(s1[i]!='/0')i++;//统计s1中字符串长度i,即s1的最大下标+1

while(s2[j]!='/0')s1[i++]=s2[j++];//先赋值s1[i]=s2[j],然后i++,j++,完成后i的值即为最大下标+1

s1[i]='/0';//给这个元素赋值'/0',表示字符串结尾

printf("连接后的结果:s=%s/n",s1);

//

}

//********************************************************************************

//试题二

//********************************************************************************

void exe2()

{

printf("/n : 求100-999中的水仙花数/n");

printf("/n (若三位数abc,a3+b3+c3=abc,则称abc为水仙花数。)/n");

printf("/n (例如153,13+33+53=153,则153称为水仙花数。)/n");

printf(" : 用循环结构和数组实现./n");

// 我的解答:在哪里使用数组??-_-!

int i,j,k,n,sxhi=0;

int sxh[900]={0};//记录水仙花数

for(n=100;n<1000;n++)

{

i=n/100; //百位

j=n/10-i*10;//十位

k=n%10;  //个位

if(n==i*i*i+j*j*j+k*k*k)

{

sxh[sxhi]=n;//将就这道题的要求…其实不用数组,直接输出结果就可以了嘛。

sxhi++;

}

}

printf("100~999之间的水仙花数有:/n");

sxhi=0;

while(sxh[sxhi]!=0)

{

printf("%d/n",sxh[sxhi]);

sxhi++;

}

//

}

//********************************************************************************

//试题三

//********************************************************************************

void exe3()

{

printf(" : 编写一个函数,判断输入的年份是否为闰年./n");

printf(" : int isleap(int year)./n");

printf(" : (1)形参year为判断的年份,返回值为1则为闰年,返回值0则为平年./n");

printf("         (2)在主调函数中输入年份,调用函数fun,输出结果./n");

//我的解答

int year,flag=0;

int isleap(int year);

printf("请输入年份:");

scanf("%d",&year);

flag = isleap(year);

if(flag==1)

{

printf("闰年/n");

}

else

printf("平年/n");

}

int isleap(int year)

{

int flag=0;

if( year%400==0 || ((year%100)!=0 && year%4==0) )

flag = 1;

return flag;

} //

//********************************************************************************

//********************************************************************************

//********************************************************************************

//********************************************************************************

//********************************************************************************

//********************************************************************************

void main()

{

int sel;

do

{

printf("/t/t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/n");

printf("/t/t     计算机学院XXXX专业上机考试模式示例    /n");

printf("/t/t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/n");

printf("/t/t/t111  示例    /n");

printf("/t/t/t1  试题1    /n");

printf("/t/t/t2  试题2    /n");

printf("/t/t/t3  试题3    /n");

printf("/t/t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/n");

printf("/t/t/t0  退出系统/n");

printf("/t/t~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/n");

printf("请选择:");

scanf("%d",&sel);

switch(sel)

{

case 111:exe0();break;

case 1:exe1();break;

case 2:exe2();break;

case 3:exe3();break;

case 0:printf("/n/n/t/t/t/t^-^,再见!/n/n/n");break;

}

}while(sel!=0);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值