語言編程題
#include <stdio.h>
#include <math.h>
int main()
{
double x,y;
scanf("%lf",&x);
if(x<=-2)
y=-pow(exp(1),2*x+1)+3;
else if(x<=3)
y=2*x-1;
else
y=2*log10(3*x+5)-11;
printf("%lf ",y);
return 0;
}
Ⅱ c語言編程題
//1.輸入一個字元串和整數n,將前n個字元復制到另一個字元串中並輸出。
#include<stdio.h>
void
main()
{
char
a[50];
char
b[50];
printf("輸入一個字元串:\n");
int
n;
gets(a);
printf("輸入一個整數\n");
scanf("%d",&n);
int
i;
for(i=0;i<n;i++)
{
b[i]=a[i];
printf("%c",b[i]);
}
printf("\n");
}
Ⅲ C語言編程題
void getWords(int n)
{
char s[]="Word,Excel,Powerpoint,Outlook,Access,InfoPath,Publisher,Sharepoint";
int i,cnt,last;
s[strlen(s)]=',';
s[strlen(s)]='\0';
for(i=0,cnt=0,last=-1;cnt<n&&i<strlen(s);i++)
{
if(s[i]==',')
{
cnt++;
if(cnt!=n)
{
last=i;
}
}
}
for(int k=last+1;k<i-1;k++)
{
printf("%c",s[k]);
}
}
如需調用庫函數版本請追問
Ⅳ C語言編程題
long fun(int k)
{
if(i<2)
return 1L;
return k*fun(k-1);
}
或:
#include "stdio.h"
main()
{
double h,c;
//printf("Input h ");
scanf("%lf",&h);
c=5.0/9*(h-32);
printf("c=%lf",c);
}
(4)語言編程題擴展閱讀:
C語言包含的各種控制語句僅有9種,關鍵字也只有32 個,程序的編寫要求不嚴格且以小寫字母為主,對許多不必要的部分進行了精簡。實際上,語句構成與硬體有關聯的較少,且C語言本身不提供與硬體相關的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統。
Ⅳ C語言編程題
#include<stdio.h>
voidmain(){
inta,b,i,j,k=1;
scanf("%d%d",&a,&b);
if(a>0&&b>0)
for(i=1;i<a;i++)
for(j=1;j<a;j++)
if(i+j==a&&i*2+j*4==b)
{k=0;printf(" %d%d",i,j);}
if(a<=0||b<=0||k)
printf("此題無解");
}
運行示例:
Ⅵ c語言編程題
這個是因為你的語法錯誤
if
{
語句
}
else
{
語句
}
要這種方式,你的是if(a<=1000) b= sqrt(a);這句判斷就結束了,和後面的else沒有關系了。要用{}把後面的語句括起來才可以。
Ⅶ c語言編程題
第一題
int a[2];
int *p = a;
*p = 11; *(p+1) = 92;
int cnt = 0;
for (int i = 0; i < 2; i++) {
if (*(p+i) % 10 == 2) ++ cnt;
}
第二題:
char a[11] = "aBcdEfghij";
char *p = a;
int m = 0;
char b[11] = {0};
for (int i = 0; i < 10; i++) {
if (int(*(p+i)) >= 65 && int(*(p+i)) <= 90 ) {
b[m++] = *(p+i);
}
}
for (int i = 0; i < m; i++) {
printf("%c", b[i]);
}
Ⅷ C語言編程題 求代碼
#include <stdio.h>
#include <string.h>
int n;
struct Student {
int no;
char name[10];
int score[5];
int sum;
int average;
}student[100000];
void Sort(Student *s){
for(int i=0;i<n;i++)
for(int j=i+1;j<n;j++){
if(s[j].sum>s[i].sum){
char ns[100];
strcpy(ns,s[i].name);
strcpy(s[i].name,s[j].name);
strcpy(s[j].name,ns);
int snum=s[i].sum,save=s[i].average;
s[i].sum=s[j].sum,s[i].average=s[j].average;
s[j].sum=snum,s[j].average=save;
}
}
}
void printInfo() {
for (int i = 0; i < n; i++) {
printf("%s,%d,%d ", student[i].name, student[i].sum, student[i].average);
}
}
int main()
{
printf("請輸入學生的數量n:");
scanf("%d",&n);
for (int i = 0; i < n; i++) {
printf("請分別輸入第%d名同學的id,名字,成績1,成績2,成績3,成績4", i + 1);
scanf("%d%s%d%d%d%d", &student[i].no, student[i].name, &student[i].score[0], &student[i].score[1], &student[i].score[2],&student[i].score[3]);
student[i].sum=student[i].score[0]+student[i].score[1]+student[i].score[2]+student[i].score[3];
student[i].average=student[i].sum/4;
}
Sort(student);
printInfo();
return 0;
}
Ⅸ C語言編程題
要輸入的分數太多,我懶得手數,用2位隨機數代替手輸入,輸入函數我單獨寫了,你需要調用就行了,詳細看備注。
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#definestuNum15//學生人數
#definescNum7//模塊數
typedefstructstu//定義學生數據結構
{
intsid;//學生ID
intsc[scNum];//對應7個模塊成績
intsum;//總成績
}STU;
voidinsertSTU(STU*stu);//輸入15個學生的信息
voidinsertTest(STU*stu);//測試,用隨機數代替輸入,我懶得輸入那麼多成績,你要手輸,調用insertSTU替換該函數
voidprintfSTU(STU*stu);//按輸入順序列印15名學生7模塊成績及每個模塊前三名的成績
intmain()
{
STUstu[stuNum];//定義15個學生
//inti,j,sc;
srand(time(NULL));
insertTest(stu);//想手動輸入這里改成insertSTU(stu)
printfSTU(stu);
return0;
}
voidprintfSTU(STU*stu)//按輸入順序列印15名學生7模塊成績及每個模塊前三名信息及總分前三名信息
{
inti,j,k,sc;
STU*max[3],*sum[3],newstu;//max對應7個模塊前3的學生結構指針sum對應總分前3學生結構指針
for(i=0;i<stuNum;i++)
{
printf("編號%02d的學生7模塊成績及總分分別為:",stu[i].sid);
for(j=0;j<scNum;j++)
{
sc=stu[i].sc[j];
printf("%02d",sc);
}
printf("%d
",stu[i].sum);
}
for(j=0;j<scNum;j++)
{
for(k=0;k<scNum;k++)
{
newstu.sc[k]=0;
newstu.sum=0;
}
max[0]=max[1]=max[2]=&newstu;
for(i=0;i<stuNum;i++)
{
if(stu[i].sc[j]>max[0]->sc[j])
max[0]=&(stu[i]);
elseif(stu[i].sc[j]>max[1]->sc[j])
max[1]=&(stu[i]);
elseif(stu[i].sc[j]>max[2]->sc[j])
max[2]=&(stu[i]);
}
printf("模塊%02d前3名分別為:編號:%02d分數:%02d編號:%02d分數:%02d編號:%02d分數:%02d
",j+1,max[0]->sid,max[0]->sc[j],max[1]->sid,max[1]->sc[j],max[2]->sid,max[2]->sc[j]);
}
sum[0]=sum[1]=sum[2]=&newstu;
for(i=0;i<stuNum;i++)
{
if(stu[i].sum>sum[0]->sum)
sum[0]=&(stu[i]);
elseif(stu[i].sum>sum[1]->sum)
sum[1]=&(stu[i]);
elseif(stu[i].sum>sum[2]->sum)
sum[2]=&(stu[i]);
}
printf("總分前3名分別為:編號:%02d總分:%02d編號:%02d總分:%02d編號:%02d總分:%02d
",sum[0]->sid,sum[0]->sum,sum[1]->sid,sum[1]->sum,sum[2]->sid,sum[2]->sum);
}
voidinsertSTU(STU*stu)//輸入15個學生的信息
{
inti,j,sc;
for(i=0;i<stuNum;i++)
{
stu[i].sid=i+1;
stu[i].sum=0;
printf("輸入編號%d的學生的7個模塊成績:",i+1);
for(j=0;j<scNum;j++)
{
//scanf("%d",&sc);//我懶得輸入那麼多成績,就用隨機數代替,你要輸入把這句恢復
sc=(int)(rand()%100);//用隨即2位數代替輸入,不需要就注釋掉
stu[i].sc[j]=sc;
stu[i].sum=stu[i].sum+sc;
}
}
}
voidinsertTest(STU*stu)//測試用代替輸入
{
inti,j,sc;
for(i=0;i<stuNum;i++)
{
stu[i].sid=i+1;
stu[i].sum=0;
for(j=0;j<scNum;j++)
{
sc=(int)(rand()%100);
stu[i].sc[j]=sc;
stu[i].sum=stu[i].sum+sc;
}
}
}