[c语言指针用法]int top 应不属于指针的范畴了,而是int的常用变量的定义,这个top要看是怎么用法,如果按照负数,0,正数来使用的话,可以判断它是用来做为这个类的一个特殊的定义标识; 如果这个变量是...+阅读
第二题
void MaxOrMain(bool flag) //flag 为0 是降序 为1是升序
{
int i,j;
int * TempNum;
int temp;
TempNum = (int*)malloc(sizeof(int)*3);
for (i=0;i<3;i++)
{
scanf("%d",&TempNum[i]);
}
for (i=0;i<3;i++)
{
for (j=0;j<3;j++)
{
if (TempNum[i] { temp = TempNum[i]; TempNum[i] = TempNum[j]; TempNum[j] = temp; } } } if (flag) { for (i=0;i<3;i++) { printf("%d",TempNum[i]); } }else { printf(" %d",TempNum[2]); printf(" %d",TempNum[1]); printf(" %d",TempNum[0]); } free(TempNum); TempNum = NULL; } 我加的那些交互的输出是调试用的,主要改3个地方: #include#includevoid movC(char *former,char ch) { char *t; for(;*former!='\0';former++) if(*former==ch) for(t=former;*t!='\0'; ++t) // 1:这里,原因比较一下原来的代码就知道了 *t=*(t+1); // 1 } int main(void) { int n; char ch; printf("输入最大字符长度:"); scanf("%d",&n); while(getchar() != '\n'); // 2:这里,scanf之后缓冲区里有个'\n'还没读,所以要把它清了先,不然gets读不到东西 char *str=(char *)malloc(sizeof(char)*n); printf("输入字符串:"); gets(str); printf("输入字符:"); ch=getchar(); movC(str,ch); printf("移除后:"); puts(str); // 3:这里应该是输出吧,改gets为puts return 1; } #include struct Book { private: char covername[20]; char author[20]; double price; public: void inbook(char _covername[],char _author[],double _price) { strcpy(covername,_covername); strcpy(author,_author); price=_price; } void outbook() { printf("书名:%s,作者:%s,价格:%lf\n",covername,author,price); } }; int main() { char covername[20]; char author[20]; double price; Book b[5]; for(int i=1;i<=5;++i) { fflush(stdin); printf("输入书名:"); gets(covername); printf("输入作者:"); fflush(stdin); gets(author); printf("输入价格:"); scanf("%lf",&price); b[i-1].inbook(covername,author,price); } for(int j=0;j<5;++j) { b[j].outbook(); } system("pause"); return 0; } 如果要用指针,请改: void inbook(char *_covername,char *_author,double _price){strcpy(covername,_covername);strcpy(author,_author);price=_price;} include struct Employee* Binary_Search(struct Employee emp[10],long num) { struct Employee *start,*mid,*end; start = emp; end = emp+9; while(end-start>=0) { mid = emp+(start-emp+end-emp)/2; if(num==mid->number) return mid; else if(num>mid->number) start = mid+1; else end =mid-1; } return NULL; } void Print_Employees(struct Employee emp[10]) { struct Employee *p; for( p = emp; p < emp+10; p++) printf(" %-20s%-10d\n",p->name,p->number); } void main() { struct Employee employees[10]; long search_num; struct Employee *search; Create_Employees(employees); printf("输入之后的列表...\n"); Print_Employees(employees); Order_Employees(employees); printf("排好序了...\n"); Print_Employees(employees); printf("请输入要查找的工号:\n"); scanf("%d",&search_num); search = Binary_Search(employees,search_num); if(search==NULL) printf("该工号不存在。\n"); else printf("查找对应的姓名是 %s\n",search->name); } 以下为关联文档: C语言指针基本概念及其指针变量的定义是什么我们知道变量e79fa5e98193e59b9ee7ad9431333332633039在计算机内是占有一块存贮区域的,变量的值就存放在这块区域之中, 在计算机内部, 通过访问或修改这块区域的内容来访问或修... C语言函数指针的调用问题?函数指针怎么用有函数: int fun(int a,int b); 要定义指向该函数的指针 对比指向 int a; 的指针 int *p; p = &a; p的定义是怎么来的? 首先要保证p是一个指针类型 写下(*p), 然后,考虑下p的基类... C语言数组指针#include #define STU 3 #define GRA 4 void search(float gra[][GRA],int stu); void print(float gra[][GRA],int i); int main(void) { float gra[STU][GRA] = {0}; int... c语言指针数组char *name[4];是一个指针数组,每个成员name[i]都是一个字符指针。 printf函数打印字符串时传的参数就是一个字符指针。 所有printf("%s", name[4]); --针对你的问题 printf(“%... C语言指针赋值正确的答案是A 用主函数中y的地址对应形式参数x指针,x的地址对应形式参数y指针 fun内的printf输出的是指针x指定的地址中的内容和指针y所指定的地址中的内容,就是主函数中的y... c语言中指向指针的指针#include<stdio.h> #include<stdlib.h> #define M 3 #define N 3 void main() { void add(int **a,int **b,int **c,int rows,int cols); int i,j; int a[M][N],b[M][N],c[M... C语言程序设计数组指针与字符串程序我在vc6.0上调试过了,能通过。 希望对你有所参考。 #include<iostream> using namespace std; int* min(int*array,int*s) { for(int i=0;i<5;i++) { for(int j=5*i;j<5*... C语言指针变量运算目前只有和整型的加减貌似可执行,是不是太奇葩了? 一点也不是,因为只需要加减运算 int *p=(int *)0xA00000000; int *p1=p+10; int x; 下面是指针可以进行的运算。 p-x;//指针 p... C语言指针函数C语言指针函数,c语言中函数名就是一个指针吗:如果在程序中定义了一个函数,那么在编译时系统就会为这个函数代码分配一段存储空间,这段存储空间的首地址称为这个函数的地址。而且...指针初级编程 C语言
C语言编程题指针
C语言用指针编程