#include <stdio.h>main(){ /* int a[5],i,*pa; //定义整型数组和指针 pa=a; //将指针pa指向数组a for(i=0;i<5;i++){ //循环 *pa=i; //将变量i的值赋给由指针pa指向的a[]的数组单元 pa++; //将指针pa指向a[]的下一个单元 } pa=a; //指针pa重新取得数组a的首地址 for(i=0;i<5;i++){ //循环 printf("...
指针的基本概念 在计算机中,所有的数据都是存放在存储器中的。 一般把存储器中的一个字节称为一个内存单元,
不同的数据类型所占用的内存单元数不等,如整型量占2个单元,字符量占1个单元等, 在第二章中已有详细的介绍。为了正确地访问这些内存单元,
必须为每个内存单元编上号。 根据一个内存单元的编号即可准确地找到该内存单元。内存单元的编号也叫做地址。
既然根据内存单元的编号或地址就可以找到所需的内存单元,所以通常也把这个地址称为指针。指针”是指地址,
是常量,“指针变量”是指取值为地址的变量。 定义指针的目的是为了通过指针去访问内存单元。 既然指针变量的值是一个地址,
那么这个...
想成为.net工程师吗?看看下面20道题你能回答多少道?
1.面向对象的思想主要包括什么?
2.什么是ASP.net中的用户控件
3.什么叫应用程序域?什么是受管制的代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?
4.列举一下你所了解的XML技术及其应用
5.值类型和引用类型的区别?写出C#的样例代码。
6.ADO.net中常用的对象有哪些?分别描述一下。
7.如何理解委托?
8.C#中的接口和类有什么异同。
9..net中读写数据库需要用到哪些类?他们的作用
10.UDP...
发现的好东西。当然要留下来看了。。。。。指针是一个
特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的
类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一:
(1)int*ptr; (2)char*ptr; (3)int**ptr; (4)int(*ptr)[3];
(5)int*(*ptr)[4]; 指针的类型 从语法的角度看,你只要把指针声明语句里的指针名字去掉,剩下的部
分就是这个指针的类型。这是指针本身...
觉得还可以就抄过来了。。呵呵。基本要求 1.1 程序结构清
析,简单易懂,单个函数的程序行数不
得超过100行。 1.2 打算干什么,要简单,直接了当,代码精简,避免垃圾程序。 1.3 尽量使用标准库
函数和公共函数。 1.4 不要随意定义全局变量,尽量使用局部变量。 1.5 使用括号以避免
二义性。 2.可读性要求 2.1 可读性第一,效率第二。 2.2 保持注释与代码完全一致。 2.3 每
个源程序文件,都有
文件头说明,说明规格见规范。 2.4 每个函数,都有函数头说明,说明规格见规范。 2.5 主要变量(结构、联合、类或
对象)定义或引用时,注释...
昨天浑浑噩噩的过了一天。。什么都没做。。浪费了一天。。昨晚赶工做了一个网页。今天早上居然破纪录睡到12点多。。。中午重新学习了高中的数学书。看了那些秦九韶算法。辗转相除法,更相减损术。顺便学习了进位制的转换。等等。不过没有找到那个排列和组合的。。忘记要怎么算了。。算了。以后再找吧。嘿嘿。。好像还看了些数列。。感觉自己高中的数学是白学了。。都忘记光了啊。。难过。。。下午或者晚上有时间学习C的话。再来记录下吧。尽量不要浪费了今天。给自己加油。
#include <stdio.h>#define LETTER 1void main(){ char str[20]="C Language",c; /**/----输入一行字母字符,根据需要设置条件编译使之能将字母全改为大写(或小写)输出---*int i;while((c=str[i])!='\0'){i++;#if LETTERif(c>='a'&&c<='z')c=c-32;#elseif(c>='A'&&c<='z')c=c+32;#endifprintf("%c",c);}/*--------------------------...
#include <stdio.h>int age(int n) /*函数一定要放在main函数的上面*/{ /*计算后一个比前一个数大2的递归*/ int c; if(n==1) c=10; else c=age(n-1)+2; return(c);}int att(int a) /*计算n!的递归*/{ int j; if(a==0||a==1) j=1; else j=att(a-1)*a; re...
1,1,2,3,5,8,13,21,34,55......意思是除了第一个和第二个数是1.其他的值都是前面两个值的和。求第二十个的值。有3种方法。正常的循环。数组。递归。嘿嘿:暂时不写出来。过段时间看看自己还能不能写出来。/*----------------------------------------------------------------------*/
所有的变量声明必须在程序的开始出。。。。
\0是空字符位。如果程序中遇到时会自动到此结束。
x=i+++j 优先级
!x 判断x==0Char c[...
#include <stdio.h>main(){ float a,b; a=123456.789e5; /*浮点数如果用一个很大的数加一个很小的数,它最多精确7个数字。*/ b=a+20; printf("%f\n",b); system("PAUSE"); }还有就是switch语句不能用float的。/*----------------------------------数组-----------------------------------*/数组的问题:不支持动态数组。字符数组。要用字符串数组的话就用指针咯。1.数组的...
#include <stdio.h>main(){ int a=5,b; b=++a*--a; printf("%d",b); printf("\n"); system("PAUSE"); } 今天他们的群里讨论的。我也不知道怎么解释。。看来对运算符都还不了解。哎。。继续努力。放在这里,看看哪天能解决它。。/*-----------------------------------------------------------*/解决:把++a传递地址。所以把++a看做是整体的a。a=5.--a依然是5因为a++之后是6再a--就是5.a*--...
#include<string.h>int main(){ char a[1000]; /*一开始就能想到char的范围-128~127*/ int i; for(i=0;i<1000;i++) { a[i]=(-1-i); } printf("%d\n",strlen(a)); /*strlen都不知道是用来干嘛的。2010.04.17*/ system("PAUSE"); return 0;}/*由这题去了解到了原码、反码、补码 */ /*还有sizeof和strlen之间的区别关系*/ ...
一、sizeof的概念 sizeof是C语言的一种单目操作符,如C语言的其他操作符++、--等。它并不是函数。sizeof操作符以字节形式给出了其操作数的存储大小。操作数可以是一个表达式或括在括号内的类型名。操作数的存储大小由操作数的类型决定。二、sizeof的使用方法 1、用于数据类型 sizeof使用形式:sizeof(type) 数据类型必须用括号括住。如sizeof(int)。 2、用于变量 sizeof使用形式:sizeof(var_name)或sizeof var_name 变量名可以不用括号括住。如sizeof (var_name),sizeof var_...
scanf和getchar函数是输入函数,接收来自键盘的输入数据。scanf是格式输入函数, 可按指定的格式输入任意类型数据。getchar
函数是字符输入函数, 只能接收单个字符。 printf和putchar函数是输出函数,向显示器屏幕输出数据。printf是格式输
出函数,可按指定的格式显示任意类型的数据。putchar是字符显示函数,只能显示单个字符。指针类型 指针是一种特殊的,同时又是具有重要作用的数据类型。其值用来
表示某个量在内存储器中的地址。虽然指针变量的取值类似于整型量,但这是两个类型完全不同的量,因此不能混为一谈。4.空类型在调用函数值时,通常应向调
用者返...
今天本来也想学习C的。。。可是今天上asp.net的课。老师非得要我们参加学校举行的软件设计大赛。做什么地铁售票系统。哎。没办法。只能去做咯。。今天做了一天,才发现。。。原来自己那么久没去写asp.net的代码了。真的都忘记光了。。。写了好久才写了一个界面以及一些简单的功能。一个星期的时间。又不能多花点时间在C上了。。这个星期只能做好这个系统去参赛。顺便也复习一下asp.net吧。替自己加油。。。。
#include<stdio.h>main(){ int s[100]; int t[3]; char i; printf("请输入100个以内的数字,按z结束:\n"); for( i=0;i<100;i++) { scanf("%s",&t); if(strcmp(t,"z")==0) { printf("输入结束,一共输入了%d个数\n",i); system("PAUSE"); exit(0); ...
#include <stdio.h>main(){ int a[10],i,j,k,t; /*声明变量 */ printf("请输入十个数字:\n"); for(i=0;i<10;i++) /*循环输入十个数字 并存入数组*/ { scanf("%d",&a[i]); } printf("\n"); for(i=0;i<9;i++) /*i=k,j=i+1;即:j=k+1; */ { k=i; for(...
#include <stdio.h>main() { int i,j,k,s; /*声明变量i为百位,j为十位,k为个位,s为这个三位数。 */ printf("水仙花数分别为:\n"); for(s=100;s<1000;s++) //因为s是三位数,所以是100到1000之间 { i=s/100; j=s/10%10; k=s%10; if(i*100+j*10+k==i*i*i+j*j*j+k*k*k) //水仙花数的条件 { p...
1.
习惯上,符号常量名用大 写,变量名用小写表示,以增加可读性。
2.
忽略了变量的类型,进行了不合法的运算。
3.
将字符常量与字符串常量混淆。 char
c; c="a";
4.
忽略了“=”与“==”的区别。
5.
忘记加分号。多加分号。
6.
输入变量时忘记加地址运算符“&”。
7.
输入数据的方式与要求不符。
①scanf("%d%d",&a,&b);
输入时,不能用逗...
#include <stdio.h>main(){ char a,b; /* 声明字符变量*/ printf("input character a,b\n"); /*提示用户输入两个字符值。 */ scanf("%c %c",&a,&b); /* scanf中的%C和%C中间有空格的话,表示输入的时候可以有空格间隔。 */ /*scanf("%c,%c",,&a,&b);*/ /*scanf中 的%C和%C中间有,的话,表示输入的时候要有,间隔。*/ /*scanf("a=%d,b=%d",&a...