皖西学院2018年c语言上机题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

皖西学院2018年c语言上机题

试卷 1 改错题

在屏幕上输入以下图形(每行前没有空格,星号之间也没有空格)

*****

****

***

**

*

**

***

****

*****

#include

void main()

{

int i,j;

i=1; /*$ERROR1$*/ 改为i=0;

while(i<5)

{

j=0;

while(j<5-i)

{printf("*");

j++;

}

printf("\n");

i++;

}

i=4;

while(i>0)

{

j=0;

while(j<5-i) /*$ERROR2$*/ 改为while(j<=5-i)

{printf("*");

j++;

}

printf("\n");

i++ ; /*$ERROR3$*/改为i--;

}

}

试卷 1 填空题

某部门有三位职工,要求输入职工的工资信息,计算每位职工的实发工资和部门实发工资总额(total )

说明:

(1)描述职工工资信息的数据包括编号(num)、姓名(name)、基本工资(bwage)奖金(bonus)、保险(ins)和实发工资(rwage);

(2)实发工资=基本工资+奖金—保险;

(3)职工编号长度小于10 位且为整数,姓名不包括空格。

#include

#define N 3

struct employee

{

long num;

char name[15];

long bwage,bonus,ins,rwage;

};

void main()

{

sruct employeeNK1$*/

int i;

long total;

total=0 ;/*$BLANK2$*/

printf("Please input data:\n");

printf("\nnum name bwage bonus ins:\n");

for(i=0;i

{

scanf("%ld%s", &worker[i].num, worker[i].name);

scanf("%ld%ld%ld", &worker[i].bwage, &worker[i].bonus, &worker[i].ins);

}

for(i=0;i

{

Worker[i].rwage=worker[i].bonus-worker[i].ins;/$BLANK3$*/

total=total+worker[i].rwage;

}

printf("output:\n ");

printf("\nnum name real wage\n");

for(i=0;i

{

printf("%-9ld %-14s %-ld\n", worker[i].num, worker[i].name, worker[i].rwage);

}

printf("\ntotal wage =%ld\n",total);

}

试卷 1 程序题

某果农有一车水果,第一天卖掉三分之而后吃了两个,第二天卖掉了剩下的三分之二又吃了

两个,第三天到第七天都如此,到第八天一看只剩了五个苹果。求此车共装有多少个苹果(要求用循环实现)。

参考程序1

#include

void PRINT(int s)

{

FILE *out;

printf("s=%d\n",s);

if((out=fopen("C:\\24000110\\RESULT.DAT","w+"))!=NULL)

fprintf(out,"s=%d",s);

fclose(out);

}

void main()

{

int i ;s=5;

for (i=1;i<8;I++)

s=(s+2)*3;

PRINT(s);

}

试卷 2 改错题

计算所有三位正整数中各个数位上数字之和是13 的数的总和。如将139、148、157 等这样的数求和。

#include

void main()

{

int i,j,s;

long sum;

sum=1; /*$ERROR1$*/ 改为sum=0;

for(i=100;i<=999;i++)

{

j=i;

s=0;

while(j>1) /*$ERROR2$*/ 改为while(j<0)

{

s=s+j/10; /*$ERROR3$*/ 改为s=s+j%10;

j=j/10;

}

if(s==13) sum+=i;

}

printf("%ld\n",sum);

}

试卷 2 填空题

从键盘上输入两个正整数,并输入他们的最大公约数。

#include

int gcd(int m,int n)

{

int r,t;

相关文档
最新文档