在線c編程
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#defineN100
structscore
{
floatmath;
floatenglish;
floatcomputer;
};
structstudent
{
intnumber;
charname[20];
structscoresco;
floataverage;
};
structstudentstu[N];
floatinput_score(int);//計算學生平均成績
voidprint_student2(void);//顯示表頭
voidprint_student3(int);//顯示學生信息
voidprint_student1(int);//顯示全部學生資料
voidprint_student1(inta)//顯示全部學生資料
{
printf("本班所有學生具體信息如下 ");
print_student2();
for(inti=0;i<a;i++)
{
print_student3(i);
}
}
voidprint_student3(inta)//顯示學生信息
{
printf("%8d%12s%14.2f%14.2f%14.2f%14.2f ",stu[a].number,stu[a].name,stu[a].sco.math,stu[a].sco.english,stu[a].sco.computer,stu[a].average);
}
voidprint_student2(void)//顯示表頭
{
printf("學號姓名數學成績英語成績計算機成績平均成績 ");
}
voidinput_student1(inta)//輸入學生信息
{
printf("學號:");
scanf("%d",&stu[a].number);
getchar();
printf("姓名:");
gets(stu[a].name);
printf("數學成績:");
scanf("%f",&stu[a].sco.math);
printf("英語成績:");
scanf("%f",&stu[a].sco.english);
printf("計算機成績:");
scanf("%f",&stu[a].sco.computer);
}
floatinput_score(inta)//計算學生平均成績
{
return(stu[a].sco.math+stu[a].sco.english+stu[a].sco.computer)/3;
}
//voidmain()
intmain()
//最好是intmain
{
structstudentstu[N];
input_score(student);
print_student2(student);
print_student3(student);
print_student1(student);
print_student1(student);
return0;
//加上返回值
}
⑵ C語言簡單編程 在線等
意思是在熒幕上顯示hello,world。有一處錯誤,括弧內要加引號,另外,要執行的話需要先編譯才行
⑶ c語言代碼(在線)
這個程序我見過!地址如下。
程序是沒有任何問題的。do..while只是為了提高程序的判斷驗錯能力。給你解釋一下:
void insert()
{
int i=n,j,g; //這里n是全局變數,它記錄了總學生數
printf("input number:\n"); //這里是提示要插入(增加的人數),比如要增加10個學生,輸入10,只增加1個學生就輸入1,這個概念要清楚
scanf("%d",&m);
do
{ g=1;
while(g)
{ g=0;
printf("iuput %dth telephone:\n",i+1); //提示輸入,提示你輸入第n+1個學生的數據
scanf("%s",phon[i].tel);
for(j=0;j<i;j++)
if(strcmp(phon[i].tel,phon[j].tel)==0) //對字元串不能直接比較故用字元串比較函數strcmp()判斷
{ printf("that have ,please input again!\n"); //相等則說明輸入重復,有重復立即退出該層循環並要求重新輸入
g=1;
break; //如有重復立即退出該層循環
}
}
printf("input %dth name:\n",i+1);
scanf("%s",phon[i].name);
printf("input %dth address:\n",i+1);
scanf("%s",phon[i].add);
printf("input %dth telephone:\n",i+1);
scanf("%s",phon[i].tel);
printf("input %dth E-mail:\n",i+1);
scanf("%s",phon[i].mail);
if(g==0) //如果g==0,說明輸入正確(也就是無重復),那麼i加1表示實際人數加1
{ i=i; //這句去掉,多餘無用
i++;
}
}while(i<n+m); //當輸入的總人數小於m時繼續輸入
n+=m; //輸入完成後總學生數為n+m,把這個數字保存到全局變數中供排序函數等其他函數調用
printf("complate.\n\n");
}
再說明一點,這里新增加的學生,或者是改動學生的數據都只是保存在內存中,並沒有真正寫入到硬碟的文件tonxunlu.dat中,所以要把結果保存到文件中,退出程序時必須調用功能模塊save()函數將內存中的有關數據(包括增加和改動後的)全部寫入到文件tonxunlu.dat中。這一點源程序已經說明得很清楚。
當然如果你不想在退出前執行save()函數模塊,可以在insert()函數中的最下面調用該save()函數也可以,也就是:
void insert()
{
......
n+=m;
save();//這里
printf("complete.\n\n");//此單詞寫錯
}
⑷ 在線解釋C語言
看起來是並口轉串口的程序,
拿AD9851晶元的數據手冊對一對就明白了。
⑸ 有什麼好的C語言在線編程網站嗎
南洋理工學院的OJ系統還是不錯的,希望對你有幫助,望採納
⑹ C語言在線求助!!!!!!
迴文判斷函數有問題.
主函數中函數調用有問題.
修改如下:
#include<stdio.h>
intprime(intn)
{inta;
for(a=2;a<n/2;a++);
if(n%a==0)
return0;
return1;
}
intpalindrome(intm)
{intb,c,d,a[1111];
for(c=0;m!=0;c++)
{
a[c]=m%10;
m=m/10;
}
for(d=0;d<c/2;d++)
{
if(a[d]!=a[c-d-1])
return0;
}
return1;
}
intmain()
{inte,f,g;
scanf("%d%d",&e,&f);
for(g=e;g<=f;g++)
{if(palindrome(g)&&prime(g))
printf("%d ",g);
}
return0;
}
⑺ 求在線C語言編程
//從鍵盤上輸入三個整數.由小到大的順序輸出;
#include<stdio.h>
#include<stdlib.h> //這里我採用了快速排序這一函數,需要在開頭聲明的庫函數;
int compare (const void *elem1,const void *elem2) //引入比較函數
{
int *p1,*p2;
p1=(int *)elem1; //強制類型轉換;
p2=(int *)elem2; //強制類型轉換;
return (* p1)-(* p2); //這個函數返回值的特點:如果返回值是負數,則p1排在p2前面;
}
main()
{
int i;
int a[4];
for (i=0;i<3;i++)
scanf ("%d",&a[i]);
qsort (a,3,sizeof(int),compare);
for (i=0;i<3;i++)
printf("%d ",a[i]);
getchar(); //在Dev-C++中,為了看最後結果;
getchar();
}
//其實這個快速排序,可以很方便的一次性快排許多整數,非常cool!!
//列印出100~999之間的所有水仙花數
#include<stdio.h>
main()
{
int i,j,k,l; //j表示i的百位;k表示i的十位;l表示i的個位;
for (i=100;i<=999;i++)
{
j=i/100; //利用int類型自動保留整數,捨去小數的特點;
k=(i-100*j)/10;
l=i-j*100-k*10;
if (i==j*j*j+k*k*k+l*l*l)
printf ("%d\n",i);
}
getchar();
getchar();
}
//利用循環解構輸出9.9乘法表
#include<stdio.h>
main()
{
int i,j;
for (i=1;i<=9;i++)
{
for (j=1;j<=i;j++)
{
printf ("%d*%d=%2d ",j,i,j*i);
}
printf ("\n");
}
getchar();
getchar();
}
//希望對你有幫助 ~~~
⑻ C語言,在線等。
1#include <stdio.h>
void main()
{
char a,c;
int b[26]={0},i;
while((a=getchar())!='\n')
{
c=a;
if (c>='A'&&c<='Z')
{
++b[c-'A'];
}
}
for (c='A',i=0;i!=26;++i,++c)
{
printf("有大寫字母%c,%d個\n",c,b[i]);
}
}
2、#include <stdio.h>
void main()
{
char s[80],ch[80];
gets(s);//取首地址即可
int i,j,m;
scanf("%d",&m);//漏了取地址符號
for(i=0,j=0;i<=m;i++,j++)
ch[j]=s[i];
for(i=i-m;s[i-m]!='\0';i++)
s[i]=s[i-m];
for(i=m,j=0;s[i]!='\0';i++,j++)
s[i]=ch[j];
s[i]='\0';
puts(s);
}
⑼ C語言 在線問答
v0=13,v1=4,v2=12
⑽ 在線c語言編程高手
#include <stdio.h>
int main()
{
float price=-1, last_price=-1;
int cnt = 0, total = 0;
int increase_flag = 0;
while(~scanf("%f", &price))
{
total++;
printf("%d\t%7.3f", total, price);
if(cnt > 2)
printf("\t%s", increase_flag ? "sell" : "buy");
printf("\n");
if(last_price != -1)
{
if(price > last_price)
{
if(increase_flag) cnt ++;
else increase_flag = 1, cnt = 1;
}
else if(price < last_price)
{
if(!increase_flag) cnt ++;
else increase_flag = 0, cnt = 1;
}
else cnt++;
}
last_price = price;
}
return 0;
}
part3的
#include <stdio.h>
int main()
{
float price=-1, last_price=-1;
int cnt = 0, total = 0;
int increase_flag = 0;
float cash = 10000, shares = 0;
printf("period price cash shares value\n");
printf("-----------------------------------------------\n");
while(~scanf("%f", &price))
{
total++;
if(cnt > 2)
{
if(increase_flag)
{
if(shares != 0)
{
cash = shares * price;
shares = 0;
}
}
else
{
if(cash != 0)
{
shares = cash / price;
cash = 0;
}
}
}
printf(" %3d \t%7.3f\t%10.2f\t%7.2f\t%10.2f\n", total, price, cash, shares, cash+shares * price);
if(last_price != -1)
{
if(price > last_price)
{
if(increase_flag) cnt ++;
else increase_flag = 1, cnt = 1;
}
else if(price < last_price)
{
if(!increase_flag) cnt ++;
else increase_flag = 0, cnt = 1;
}
else cnt++;
}
last_price = price;
}
return 0;
}