C语言程序设计实验电子稿(3)

2018-11-27 10:13

如果输入的是一个负整数,程序应该如何改? (2)程序改错

计算表达式1+2!+3!+…10!的值,改正下面程序中的多处错误。 源程序(有错误的程序) #include void main(void) {

int sum1,sum2, i,j; for(i=1;i<10;i++) for(j=1,j<=i,i++) sum1*=j; sum1+=sum2; printf(\ } 3.一般编程题 编程题1

用三种循环结构(while语句、do-while语句、for语句),求1000以内奇数的和。 编程题2

输入一个正整数n,计算 1?11??? 的前n项之和,输出时保留6位小数。 35输入输出示例1: Enter n:5 sum = 1.787302

输入输出示例2: Enter n:23 sum = 2.549541 编程题3

编写程序求a+aa+aaa+……+aa……a,a是一个数字,有n个a,实际的n和a值由键盘输入,输出格式如下示例(此时a是3,n是5)。 3+33+333+3333+33333=37035

提示:将a乘上10倍并加上a,变成aa,再将aa乘上10倍并加上a,变成aaa,依次类推,在变化的同时将a,aa,aaa进行累加。 编程题4

统计从键盘输入的一行字符中的英文字母的个数。

4.较难编程题

编程题1

输出1-999之间的所有同构数。(同构数:一个数出现在它的平方数的右端,这个数就称为同构数,如5出现在25的右端,5是同构数,25出现在625右端,25也是同构数。 编程题2

如下程序利用c语言的数学函数库,求解sinx的近似值, 根据高等数学的公式,sinx =x-x3/3!+x5/5!-...(-1)k-1*x2k-1/(2k-1)!+... ,直到最后一项的绝对值小于1e-7为止。请阅读此程序,并根据cosx =1-x2/2!+x4/4!-...(-1)k*x2k/(2k)!+..., 实现计算cosx的程序代码。(exph4_1.cpp)

5.4 实验五 函数与预处理 一、实验目的与要求

1. 掌握C语言函数的定义方法、函数的声明及函数的调用方法。 2. 理解函数实参与形参的对应关系以及“值传递”的方式。

3. 掌握全局变量和局部变量动态变量、静态变量的概念和使用方法。 4. 掌握动态存储分配的方法。

5. 掌握宏定义和文件包含处理方法。 6. 实验4学时

二、实验内容

1.程序验证与改错题

(1) 程序验证题

① 下面程序执行的结果是什么 void swap(int x, int y) {

int temp; temp=x; x=y; y=temp;

}

void main() {

int a,b;

scanf(“%d%d”, &a,&b); if(a>b) swap(a, b);

printf(“%d\\t %d”, a,b); }

思考:为什么a,b的值没有交换?

② 调用函数fun计算:m=1+2+3+4+…+9+10,并输出结果。请验证下面的程序是否符合题目要求。

#include”stdio.h” int fun(int n) {

int m, i;

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

m+=i; }

return m; }

void main() {

printf(\}

在上面程序的基础上,修改程序. 计算m=1-2+3-4+?+9-10。 (2)程序改错题

下列程序的功能是利用自定义函数计算一无符号的整数各位数字的乘积。

#include

unsigned f(unsigned num) {

unsigned k=0; do {

k*=num/10; num/=10; }while(k); return k; }

void main() {

int x;

printf(“input x=:\\n”); scanf(“%d”, x); printf(“%d”, f(x)); }

2.一般编程题

编程题1 编写一函数,把输入的4个数字字符转换成一个int数据存放,如输入4123这字符转换为4123这个整数,并通过主函数验证结果。

编程题2 编写程序求:1*1*1+2*2*2+3*3*3+4*4*4+5*5*5

提示:主函数用来现实结果,f1( )函数用来求一个数的立方,f2( )函数用来求和。

#include int f1(int n) { …… }

int f2(int m) { …… }

void main() {

…… }

编程题3 定义两个带参数的宏,将两个参数的值相加和相减,并写出程序,输入两个数作为使用宏时的实参。输出相加和相减后的和与差。 编程题4

编程输出2到10000之间的所有完数。所谓完数是指因子之和与它本身相等的数。如6=1+2+3,6是一个完数。

要求:定义函数 factor(m) 判断m是否为完数;由主函数调用它,来对所有2到10000之间的所有数进行判断。 #include #include int factor(int m) {

int i,s=0; …… }

void main() {

int i,m,sum; …… }

3.较难编程题

编程题1 用函数调用实现求两个数的最大公因子和最小公倍数 编程题2 用递归方法求1+2+3+...+n并将其中素数去除后之和。 #include #include

int isprime (int number) { …… }

long fact(int n)

{

…… }

void main() {

int m,sum; …… }

6.4 实验六 数组 一、 实验目的与要求

1. 掌握一维数组的定义、赋值和输入输出的方法。 2. 理解一维数组的存储方法及下标的表示方法。 3. 掌握与数组有关的算法(特别是排序算法)。

4. 掌握二维数组的定义、赋值和输入输出的方法。 5. 理解二维数组的存储方法及下标的表示方法。 6. 实验4学时。

二、实验内容 1.程序验证题与改错题

这里有改动 (1)程序验证题

① 给定一个整型数组a,要求求出其中小于0的元素的个数。请验证下面的程序是否符合题目要求。 #define N 10 void main() {

int a[N]={11,2,4,-1,5,-3,-66,0,10,-5};

int i; /*变量i用于for循环*/

int count=0; /*变量count用于技术,初始化为0*/ for (i=0;i

if(a[i]<0)

count++; /*如果元素a[i]<0,count计数+1*/ printf(\ }

② 给定一个整型二维数组a(3,3),要求求出对角线元素的和。请验证下面的程序是否符合题目要求。


C语言程序设计实验电子稿(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:深圳港基本概况介绍

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: