阪大ラーニングカコモンズ

csp10

最終更新:

kuronekonene

- view
だれでも歓迎! 編集
C言語やるんやったら家のパソコンにコンパイラ入れることをおすすめ

#の半角が単独で出せない誰か直してください




~5/13まで

1.
#include <stdio.h>
#include <stdlib.h>

main(){

char *string = "C language";
char *p;
int num=0;

while(*(string+num)!=NULL) num++;

printf("The length of \%s is \%d", string, num);
}

あら,*p使ってへんわ.まあええか.
gccでwarningでたけど結果は

The length of C language is 10

となったしええんちゃうかな.

2.
#include <stdio.h>
#include <string.h>

main(){

int i,j;
char *p[5]={"Yamada","Utsumi","Murata","Sato","Tani"};
char *q;

for(i=0;i<5;i++){
for(j=i+1;j<5;j++){

if(strcmp(p[i],p[j])>0){
q=p[i];
p[i]=p[j];
p[j]=q;
}

}
}

for(i=0;i<5;i++) printf("%s\n",p[i]);

}

よくあるソート問題
一時ポインタqを用意してi,jのよくあるバブルソートで解決
結果

Murata
Sato
Tani
Utsumi
Yamada

3.
#include <stdio.h>
#include <stdlib.h>

int main(){

int i, num, type;
double *a; int *b;

printf("入力データの種類を決めてください1or2");
scanf("%d",&type);

switch(type){
case 1:
printf("データ数");
scanf("%d",&num);
if(NULL==(a=(double *)malloc(num))){
exit(-1);
}

for(i=0;i<num;i++) scanf("%lf",&a[i]);
for(i=0;i<num;i++) printf("%lf ",a[i]);
free(a);
break;

case 2:
printf("データ数");
scanf("%d",&num);
if(NULL==(b=(int *)malloc(num))){
exit(-1);
}

for(i=0;i<num;i++) scanf("%d",&b[i]);
for(i=0;i<num;i++) printf("%d ",b[i]);
free(b);
break;

default:
printf("1 or 2 な\n");

}

return 0;

}

mallocを使う.使い方はhttp://www9.plala.or.jp/sgwr-t/lib/malloc.htmlを参照

名前:
コメント:

タグ:

+ タグ編集
  • タグ:
人気記事ランキング
ウィキ募集バナー