2019西南大学0039C语言程序设计机考大作业答案

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

//接下来需要写一个main函数,这也是c语言程序里必不可少的一个函数,叫主函数,他是整个程序的入口函数,程序所有的功能实现都要在这个函数中体现。但是这个函数有且仅有一个

int main()

{

//这是main函数的函数体,要实现什么功能,就把实现功能的语句写到这里面

//比如我要实现打印HelloWorld字符,那么我就调用printf()标准输出语句

printf("Hello World!\n");//这个语句表示原样输出引号内的字符,‘\n’表示换行

return0;//最后,因为main函数有一个int的返回类型限定,那么我们使用return语句返回一个int类型的值 0.

}

//这样就结束了。一个简单的但又完整的C程序就有了,

//下一步就是使用编译器编译成目标的可执行文件:

//如果是windows下的vc++,那么需要分别点击编译,链接两个按钮生成hello.exe可执行文件

//如果是linux下直接在shell中使用gcc hello.c就可以编译成可执行文件a.out

//最后就是运行了,windows下直接点击vc++的运行或双击hello.exe可以出现dos窗口运行,并显示结果,linux下使用“./a.out”可以直接运行,运行结果会显示在shell中。

//这就是整个完整的流程,包括每一步。

调试过程:设置断点,调试命令,察看变量,查看内存,

常见错误:C 语言程序设计的错误可分为语法错误、连接错误、逻辑错误和运行错误。

VC++ 和DEV C++都是C++语言的开发工具。如果只是做些小程序,基本上看不出区别。两者DEBUG和RELEASE上的时间有所不同。还有一点就是,通常如果是在VC++下编写的代码,不是很规范,拿到DEV C++上会报错。而反过来则可以运行。这里涉及到GCC的问题,它对标准的支持表现在不支持非标准的东西,但是DEV C++有个最大的好处就是体积小,没有VC++这么大,可以装到U盘里。

(3)

1 对于编译器处理更方便。在编译的时候,编译器需要为变量定义符号列表,有显式的变量定义,可以让编译器更方便的查找到变量列表,从而确定变量符号列表,执行后续的编译操作。

2 不容易出错。可以识别出变量名的手打错误。比如定义了var_name,在调用的时候如果写作了var_nane, 如果没规定要先定义后使用,那么var_nane就会被当做一个新的变量使用,只到运行时才会发生错误。而按照C语言的规定,在编译阶段就可以发现该错误。

3 程序更清晰。变量定义时,直接指明类型,这样在阅读程序时不需要为查知变量类型而花费额外时间。

2、

(1)

#include

main(){

int i,n,sum=0;

printf("input n:");

scanf("%d",&n);

for (i=1;i<=n;i++)

{

sum+=i;

}

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

}

(5)

#include

#include

int main()

{

int i = 0;

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

{

int tmp = 0;

int sum = 0;

int count = 1;

tmp = i//把i赋值给tmp

while(tmp/10)//用while循环判断有几位数

{

count ++;//满足条件,计数器++

tmp /= 10;

}

tmp = i;//重新赋值

while(tmp)//判断i是否为水仙花数

{

sum += pow((tmp % 10), count);//pow函数,求一个数的次方,如输入参数pow(3,3),即得27

tmp /= 10;

}

if(sum == i)//如果sum等于i,找到了,并且输出

printf("%d ", i);

}

return 0;

}

(6)

#include

#include

#define N 5

int pri[N];

int flag=0;//判断有无素数无则返回1,有则返回0 int count=0;//素数个数

void pri me(int ar[],int n);

main()

{

int a[N];

int i,j,temp;

pri ntf("input %d numbers below:",N);

for(i=0; i

scanf("%d",&a[i]);

prime(a,N);

for(i=0; i

for(j=i+1;j

if(pri[i]>pri[j])

{

temp = pri[i];

pri[i] = pri[j];

pri[j] =temp;

}

if(flag == 1)

{

printf("After sorting:\n");

for(i=0; i

printf("%d\n",pri[i]);

printf("\n");

}

return 0;

}

void prime(int ar[],int n)

{

int i,j,m;

for(i=0; i

{

m=(int)(sqrt(ar[i])+1); for(j=2; j<=m;j++)

if(ar[i]%j == 0)

break;

if(j>m)

{

flag=1;

pri[count++]=ar[i];

printf("%4d\n",ar[i]);

}

}

printf("No primer\n");

}

3、

(1)fun的功能是求m个数的平均值(3)这些偶数的平均值是16

相关文档
最新文档