A. c語言指針編程題

#include<stdio.h>
#include<string.h>
#define MAX 20
#define NUM 3
void sort(char *str[],int n)
{
char *temp;
int i,j,k;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
if(strcmp(str[k],str[j])>0)k=j;
if(k!=i)
{
temp=str[i];
str[i]=str[k];
str[k]=temp;
}
}
}
void print(char *str[],int n)
{
int i;
for(i=0;i<n;i++)
printf("str[%d]%s\n",i,str[i]);
}
int main()
{
char str[NUM][MAX],*p[NUM];
int i;
for(i=0;i<3;i++)
{
printf("str[%d]:",i);
scanf("%s",&str[i]);
p[i]=str[i];
}
sort(p,3);
print(p,3);
}
根據你的改了 不知道能不能出回來 自己試答下

B. C語言編程題,要求指針完成

(4)

#include"stdio.h"
char*f(char*p){
char*q;
for(q=p;*p;p++)
(*p>='a'&&*p<='z')
*p-=32;
returnq;
}
intmain(intargc,char*argv[]){
chara[]="12345abcdeXYZ';?";
printf("%s ",a);
printf("%s ",f(a));
return0;
}

運行樣例:

C. C語言指針一道簡單的編程題

按照你的要求編寫的C語言程序如下專

include<stdio.h>
intmain()
{
inta,b;
int*p=&a;
a=30;
printf("a=%d ",*p);
p=&b;
scanf("%d",p);
a=*p+24;
printf("a=%d,b=%d",a,b);
return0;
}

運行結屬果
a=30
76
a=100,b=76

D. C語言編程題目 指針

上樓的代碼在比較函數中有問題!看看下面的吧!版
#include<stdio.h>
#include<conio.h>
int
compare(char
*pt,char
*p)
{
int
m=0,i=0;
while(pt[m]
!權=
'\0')
{
m++;
}
if(m<8)
return
0;
if(m>8)
return
1;
if(m==8)
for(;pt[i]
!=
'\0';p++,i++)
{
if(pt[i]
>
*p)
return
1;
if(pt[i]
<
*p)
return
0;
}
return
-1;
}
main()
{
char
*p="12345678";
char
*pt=NULL;
while(1)
{
printf("Please
input:\n");
scanf("%s",pt);
clrscr();
if(compare(pt,p)==0)
printf("More
smaller!\n");
if(compare(pt,p)==1)
printf("More
larger!\n");
if(compare(pt,p)==-1)
{
printf("The
same!\n");break;}
}
}

E. c語言指針編程題

void input(int *a,int n)
{int i;
for(i=0;i<n;i++)
scanf("%d",a+i);
}
void iuli(int*a,int n)
{int i,t,min,max;
max=min=0;
for(i=1;i<n;i++)
if(*(a+min)>*(a+i))min=i;
else if(*(a+max)<*(a+i))max=i;
t=*a,*a=*(a+min);*(a+min)=t;
t=*(a+n-1),*(a+n-1)=*(a+max),*(a+max)=t;
}
void print(int*a,int n)
{int i;
for(i=0;i<n;i++)printf("%d ",*(a+i));
printf("\n");}
main()
{int a[10];
input(a,10);
iuli(a,10);
print(a,10);}