- 定义3个整数及指向整数的指针:仅用指针的方法按由小到大的顺序输出。
#include<cstdio>
#include<iostream>
using namespace std;
int main(){
int a=3,b=2,c=1,*pa,*pb,*pc,t;
pa=&a,pb=&b,pc=&c;
if(a>b){
t=*pa;
*pa=*pb;
*pa=t;
}
if(a>c){
t=*pa;
*pa=*pc;
*pc=t;
}
if(b>c){
t=*pb;
*pb=*pc;
*pc=t;
}
printf("%d,%d,%d\n",*pa,*pb,*pc);
system("pause");
return 0;
}
- 假定输入的字符串中只包含字母和
*
。请编写函数fun,它的功能是:除了字符串前导的*
之外,将串中其他的*
全部删除。在编写函数时,不得去使用C语言提供的字符串函数。例如,若字符串中的内容为****A*BC*DEF*G******
,删除*
后,字符串中的内容则应当是****ABCDEFG。
#include<cstdio>
#include<iostream>
using namespace std;
void fun(char*,char*);
int main(){
char s[100],p[100];
gets(s);
fun(s,p);
puts(s);
system("pause");
return 0;
}
void fun(char *s,char *p){
p=s;
while(*p=='*')
*s++=*p++;
while(*p){
if(*p!='*')
*s++=*p;
p++;
}
*s='\0';
}
#include<cstdio>
#include<iostream>
using namespace std;
void fun(char*,char*);
int main(){
char s[100],p[100]={0};
gets(s);
fun(s,p);
system("pause");
return 0;
}
void fun(char *s,char *p){
int i,j;
for(i=0,j=0;i<strlen(s)&&s[i]=='*';i++,j++)
p[j]=s[i];
for(;i<strlen(s);i++)
if(s[i]!='*')
p[j++]=s[i];
p[j]='\0';
puts(p);
}