C语言程序设计上机实习答案 下载本文

内容发布更新时间 : 2024/5/18 12:00:23星期一 下面是文章的全部内容请认真阅读。

else if(ch=='\\t') {

++iCountTab; }

else if(ch=='\\n') {

++iCountLF; } }

printf(\ return 0 ; } 6.

标题: 6、字符串复制 时 限: 1000 ms 内存限制: 10000 K 总时限: 3000 ms 描述:

编制程序将键盘输入的字符存入数组a[80]中,并将该数组中的所有字符复制到数组b[80]中,同时去掉所有的空格。

输入: 键盘输入的字符串。

输出: 去掉所有的空格后,复制到的字符串。 输入样例: Hello world! 输出样例: Helloworld!

提示: 1、字符串结束符为“\\0”。

#include #include

int main() {

int ch;

ch=getchar(); while(ch!=EOF) {

if(ch!=' ') {

putchar(ch); }

ch=getchar();

6

}

return 0; } 7.

标题: 7、字符串的反转 时 限: 1000 ms 内存限制: 10000 K 总时限: 3000 ms

描述: 编制函数void Reverse(char ch[]),用于完成字符串的反转。 输入: 任意一个字符串(长度小于100)。 输出: 反转后的字符串。 输入样例: Hello 输出样例: olleH #include #include

void Reverse(char ch[]);

char ch[100]; char p; int a;

int main() {

while((p=getchar())!='\\n') {

ch[a]=p; a++; }

Reverse (ch);

return 0; }

void Reverse(char ch[]) {

int i; if(a<100) {

7

for(i=a-1;i>=0;i--) {

printf(\ } }

printf(\} 8.

标题: 8、求阶乘 时 限: 1000 ms 内存限制: 10000 K 总时限: 3000 ms

描述: 编制函数Factorial(unsigned int n),用于计算n!。其中n≤13。 输入: 整数n。 输出: n! 输入样例: 5 输出样例: 120

提示: 考虑n>13时的结果。

#include #include

unsigned int Factorial(unsigned int n);

int main() {

unsigned int n; scanf(\

printf(\ return 0; }

unsigned int Factorial(unsigned int n) {

unsigned int result, i;

result=1;

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

result=result*i; }

return result;

8

}

实验二

1.

标题: 1、二进制数操作 时 限: 1000 ms 内存限制: 10000 K 总时限: 3000 ms 描述:

编制程序计算一个unsigned long型整数的二进制表示中1的个数。要求用函数实现。函数名为int BitCount(long l)

输入: 一个unsigned long型整数。

输出: 一个unsigned long型整数的二进制表示中1的个数。 输入样例: 45L 输出样例: 4 #include #include

int BitCount(long l); int main() {

unsigned int a; scanf(\

printf(\ return 0; }

int BitCount(long l) {

int i = 0; int a=0; while(l!=0) {

a=l%2; l/=2;

if(a==1)i++; }

return i; } 2.

标题: 2、变量交换(一) 时 限: 1000 ms

9

内存限制: 10000 K 总时限: 3000 ms

描述: 编制程序实现两个整型变量的互换。 输入: 两个整型量。 输出: 交换后的两个整型量。 输入样例: 5 9 输出样例: 9 5

提示: 可以利用第三个变量作为临时变量实现交换。

#include #include

int main() {

int a, b,temp; int *p1, *p2;

scanf(\

p1=&a; p2=&b; temp=*p1; *p1=*p2; *p2=temp;

printf(\

return 0; } 3.

标题: 3、变量交换(二) 时 限: 1000 ms 内存限制: 10000 K 总时限: 3000 ms

描述: 编制程序实现两个char型变量的互换。 输入: 两个char型变量。 输出: 交换后的两个char型变量。 输入样例: a b 输出样例: b a

10