C语言难啊!!!请高手帮忙啊!定又重谢........

来源:百度知道 编辑:UC知道 时间:2024/06/22 00:31:57
4.不用strcpy函数,编写一个程序,将字符数组S1中的全部字符拷贝到字符数组S2中。
5.写一个判别素数的函数,在主函数输入一个整数,输出是否是素数的信息。
6.用函数实现,将一个十进制数,转换成相应的二进制数并输出。
7.编程,用穷举法解百马百担问题(有100匹马驮100担货,大马驮3 担,中马驮2担,两匹小马驮1担,问有大、中、小马各多少?。要求:输出计算结果;在数据输出之前应有提示信息。
8.编写一个使用“冒泡法”排序的无类型函数sort(int data[],int num,char ch),其功能是根据参数ch的值(s :升序,j:降序),将形参数组data中的数据排成升序或降序。要求函数能校验参数ch的值。
9.有一字符串,包含n个字符。写一函数,将此字符串从第m个字符开始的全部字符自制成另一个字符串并输出这个字符串。例如,要求把字符串abcdefgh中的第3个字符开始的全部字符自制成为另一个字符串cdefgh。
10.从键盘上输入n(n<50)个任意位的正整数m(m<32767),将每个整数的各位数字之和存放在数组a中。要求:求每个整数的各位数字之和用自定义函数来实现。
11. 打印出乘法九九表(三角形形式)。
1*1=1 2*1=2 3*1=3……………………………………9*1=9
2*2=2 3*2=6……………………………………9*2=18
3*3=9……………………………………9*3=27
……………………………………
9*9=81
12. 编写一个求n!的递归调用函数,求SUM=4!+10!+13!。
13. 从键盘上输入一个字符串存入str数组(小于30个字符),编写一个函数将该数组中的字符颠倒后仍存入原数组中。
14.输入两个正整数m和n,求其最大公约数和最小公倍数。
15. 已知一个m*n 的二维数组,编程求出其中的最大数及它们的行列坐标。
16.将任意输入的n位不大小32767的正整数,转化成两数

4
#include <iostream.h>
void strcpy1(char s1[],char s2[])
{
int i(0),j(0),k;
while(s1[i]!='\0')
i++;
while(s2[j]!='\0')
j++;
for(k=0;k<=i;k++)
s2[j+i]=s1[i];
}
void main()
{
char s1,s2;
strcpy1(s1,s2);
cout<<s2<<endl;
}

6.用函数实现,将一个十进制数,转换成相应的二进制数并输出。
int fun(int x)
{ if(x<2) return x;
return x%2+10*fun(x/2);
}
int main(void)
{ int x;
scanf("%d",&x);
printf("十进制:%d\n",x);
x=fun(x);
printf("二进制:%d\n",x);
getch();}
8.编写一个使用“冒泡法”排序的无类型函数sort(int data[],int num,char ch),其功能是根据参数ch的值(s :升序,j:降序),将形参数组data中的数据排成升序或降序。要求函数能校验参数ch的值。
#include <stdio.h>
#include <string.h>

void fun(char*pstr[], int n)
{
int i, j;
char *temp;
for (i = 0; i < n - 1; i++)
{
for (j = 0; j < n - i - 1;