1改错:首先Printf ,Exit ,Double,C语言没有大写的定义。还有就是scanf(“f% f% f%”,&a,&b,&c);%f %f %f 而不是f%。
2改错: 首先还是大写问题:char s1[5],s2[20]);多了一个“)”。
Ustrcat(char s1[],char s2[]);定义的时候大写,这里 puts(ustrca(s1,s2));用小写而且还少一个t字母。
while(s2[k] =’\0’)应该是!=号吧!!
程序你己自写的吧一,般卷子上不会问这样的问题。
2________________________________________________________
1.编写程序,根据以下公式求e的值。要求用两种方法进行计算:(1)用for循环,计算前50项。(2)用while循环,要求直至最后一项的值小于10-4。(程序命名为2_1.c)
看不明白计算前50项的和?差?平方和?。。。。。不知道要干什么。
(2)用while循环,要求直至最后一项的值小于10-4。什么意思???
哪到哪 就最有一项了?怎么个算法啊?小于10小于4还是小于6?
公式 看不到
-------------------------------------------------------------
2
#include
#define N 5
int main(void)
{
int anArr[N][N];
int iRow, iLIne;
for (iRow = 0; iRow < N; ++iRow)
{
for (iLIne = 0; iLIne < N; ++iLIne)
{
printf("输入anArr[%d][%d]位置上的数字:", iRow, iLIne);
scanf("%d", &anArr[iRow][iLIne]);
}
}
for (iRow = 0; iRow < N; ++iRow)
{
for (iLIne = iRow; iLIne < N; ++iLIne)
anArr[iRow][iLIne] = 0;
}
for (iRow = 0; iRow < N; ++iRow)
{
for (iLIne = 0; iLIne < N; ++iLIne)
printf("%d\t", anArr[iRow][iLIne]);
printf("\n");
}
return 0;
}
---------------------------------------------------------
3
#include
#define N 20
int nMax, nMin;
int GetMean(int anResults[])
{
int iRow;
int nMean = 0;
nMean = nMax = nMin = anResults[0];
for (iRow = 1; iRow < N; ++iRow)
{
if (nMax < anResults[iRow])
nMax = anResults[iRow];
if (nMin > anResults[iRow])
nMin = anResults[iRow];
nMean += anResults[iRow];
}
return nMean / N;
}
int Sort(int anResults[])
{
int iRow, iRowNext, nTemp;
for (iRow = 0; iRow < N; ++iRow)
{
for (iRowNext = iRow + 1; iRowNext < N; ++iRowNext)
{
if (anResults[iRow] < anResults[iRowNext])
{
nTemp = anResults[iRow];
anResults[iRow] = anResults[iRowNext];
anResults[iRowNext] = nTemp;
}
}
}
return 0;
}
int main(void)
{
int anResults[N];
int iRow;
int nMean = 0;
for (iRow = 0; iRow < N; ++iRow)
{
printf("输入第%d学的成绩:", iRow);
scanf("%d", anResults + iRow);
}
nMean = GetMean(anResults);
printf("MAX=%d\nMIN=%d\nMEAN=%d\n", nMax, nMin, nMean);
Sort(anResults);
for (iRow = 0; iRow < N; ++iRow)
{
printf("%d\t", anResults[iRow]);
}
printf("\n");
return 0;
}
注意区分字母的大小写 在c语言中式区分大小写的 例如:你的s的大小写 还有就是你的引号要用英文状态下的引号啊 这是初学程序最容易犯的错误;只要经常联系一下,在注意以下,进应该没有问题了;
第一个逻辑错误,if else 的用法,你看下我改的,还有许多语法错误
#include
#include
double tarea(float a,float b,float c);
void main()
{
float a,b,c;
printf("输入三角形的三边:");
scanf("%f%f%f",&a,&b,&c);
if(a+b>c&&b+c>a&&a+c>b)
printf("输出三角形面积:%0.8f\n",tarea(a,b,c));
else
printf("输入的三边不能构成三角形!\n");
}
double tarea(float a,float b,float c){
double s=(a+b+c)/2,area;
area=sqrt(s*(s-a)*(s-b)*(s-c));
return area;
}
第二个
#include
#include
char *Ustrcat(char s1[],char s2[]);
void main()
{
char s1[20],s2[20];
printf("输入字符串1:\n"); gets(s1);
printf("输入字符串2:\n"); gets(s2);
printf("输出字符串3:\n"); puts(Ustrcat(s1,s2));
}
char *Ustrcat(char s1[],char s2[]){
char *temp=s1;int i=0,k=0;
while(s1[i]!='\0')
i++;
while(s2[k]!='\0'){
s1[i]=s2[k];
i++;
k++;
}
s1[i]='\0';
return temp;
}
一 二都调试出来的。
后面的题都是基本教材上的,自己翻翻书就找到了,没楼上搞的那么复杂