计算机一唯数组(不得不问!C语言问题)

本文目录
- 不得不问!C语言问题
- 设计一个将一唯数组按降序排列的子过程,编程:自动产生并输出100个100-999间的正整数,要求每行输出10个数据
- 输出一唯数组数据的平均值,并输出小于平均值的那些数
- 一维数组中 array[-1]的地址是什么
- VC环境下,如何编程在二维数组a的各行中选出最大数值组成一个一维数组b,并输出数组b.
- pascal的一维数组问题
- VC6.0中如何用一唯数组和char来编写10进制转N进制
不得不问!C语言问题
&a=a=*a和&b=b这个好解释,可以理解为他们都是指针只是类型不同,比如第一个关于a的,&a是指向int**的指针,a是指向int*的指针,*a是指向int的指针。正如int型指针可以和char型指针指向同一个内存地址(也就是打印的指针值是相等的),但是他们从内存提取数据的方式不同,int会读取4字节而char只读取一字节。
**a=1,
*b=1,
&q!=q!=*q 这个理解起来和上面差不多,&q是q的地址(int ***型),而q就是q的数值也就是q指向的地址(int **型),*q则是q指向地址的内容(int *型)。
设计一个将一唯数组按降序排列的子过程,编程:自动产生并输出100个100-999间的正整数,要求每行输出10个数据
Option Explicit
Dim c As Integer
Private Sub px(ByRef a() As Integer)
Dim tmp As Integer, i As Integer, j As Integer
For i = LBound(a) To UBound(a)
tmp = 0
For j = i To UBound(a)
If tmp 《= a(j) Then tmp = a(j): a(j) = a(i): a(i) = tmp
Next
Next
End Sub
Private Sub Form_Load()
Me.AutoRedraw = True
Dim i As Integer, a(99) As Integer, d As String
For i = 0 To 99
a(i) = Int(Rnd * 900) + 100
d = d & a(i) & " "
If i Mod 10 = 9 Then d = d & vbCrLf
Next
Print d
px a()
d = ""
For i = 0 To 99
d = d & a(i) & " "
If i Mod 10 = 9 Then d = d & vbCrLf
Next
Print d
End Sub
输出一唯数组数据的平均值,并输出小于平均值的那些数
#include《stido.h》
void main()
{
int temp={1,3,4,5,2}
float a=0;
for(int i=0;i《5;i++)a+=temp;
printf("平均值是%f",a\n);
for(int i=0;i《5;i++)if(temp\n);
}
一维数组中 array[-1]的地址是什么
没有array,起始也是它的地址 。
计算机语言中的一维数组
(1)数组是一组有序数据的集合。数组中个数据的排列是有一定规律的,下标代表数据在数组中的序号。
(2)用一个数组名(如s)和下标(如15)来唯一的确定数组中的元素,如s就代表第15个学生的成绩。
(3)数组中的每一个元素都属于同一个数据类型。不能把不同类型的数据(如学生的成绩和学生的性别)放在同一个数组中。
VC环境下,如何编程在二维数组a的各行中选出最大数值组成一个一维数组b,并输出数组b.
#include《stdio.h》
void main()
{
int m,n,a;
printf("请输入M,N:\n");
scanf("%d%d",&m,&n);
printf("请输入%d个值:\n",m*n);
for(i=0;i《m;i++)
{for(j=0;j《n;j++)
scanf("%d",&a);
b;
}
printf("距阵是:\n");
for(i=0;i《m;i++)
{for(j=0;j《n;j++)
printf("%4d",a);
printf("\n");
}
printf("最大值组成的一唯数组是:\n");
for(i=0;i《m;i++)
for(j=0;j《n;j++)
if(b)
b;
for(i=0;i《m;i++)
printf("%4d",b);
}
pascal的一维数组问题
这是我临时写的,希望对你有所帮助。
program shanchu;
const n=10;(此处的值安照你的需要取值,它表示一唯数组的元素个数)
var a:array of interger;
i,j,s,t:integer;
begin
for i:=1 to n do
read(a);
t:=0;
for i:= 1 to n do
for j:=i+1 to n do
if a then
begin
a;
t:=t+1;
s:=n-t;
end;
for i:=1 to s do
writeln(a);
end.
祝你编程愉快!
VC6.0中如何用一唯数组和char来编写10进制转N进制
写了一个多小时,终于写完了。。我这么辛苦,给我加分吧。。
#include 《stdio.h》
int main(int argc,char*argv)
{
/*************
比如要将十进制的10转换成二进制,首先求10%2=0,这是最末位的数字,然后再算10/2=5,5比进制数2大,然后再执行一遍5%2=1,1比2小,
所以1是末二位数字。再执行5/2=2.2等于进制数2,然后再执行一遍2%2=0,0比2小,所以0是末三位数字,再执行2/2=1. 1比2小,所以1为末
四位数字。计算完的数字式0101,将它逆序就是1010,即10的二进制码。下面就按照这个思路来转换进制。
*************/
int i=0;
int j=0;//i,j为循环变量
int temp=0;//在计算商和余数时的一个中间变量
int nNotZero=0;//记录数组nNum中最后一位非0值得下标,这样可以将它后面的0清除
int nBase=0;//进制数
int nNumber=0;//待转换的数
int nNum={0};//定义一个接受余数和商的数组,32是你上面给的
char chNum={’0’};//定义一个字符串数组,用来保存最后转换好的数字。
/****************
一下两个数组是一种镜像思想,两个数组每一位都一一对应,当某个变量等于nSource中第i个元素时,可以将它映射为chEnan数组中的第
i个元素,这个思想在后面用来显示比如16进制中的A,B,C....
***************/
int nSource={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36};//源数组
char chEnan={’0’,’1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’,’9’,’A’,’B’,’C’,’D’,’E’,’F’,
’G’,’H’,’I’,’J’,’K’,’L’,’M’,’N’,’O’,’P’,’Q’,’R’,’S’,’T’,’U’,’V’,’W’,’X’,’Y’,’Z’};//镜像数组
printf("请输入要转换的数字:");//输入待转换数据和进制
scanf("%d",&nNumber);
printf("输入进制数:(2~37)");
scanf("%d",&nBase);
if (nBase《2 || nBase》37)//判断输入的进制数是否在2~37之间,因为1进制和0进制的数是没有意义的。大于37进制上面没有定义
{
printf("intput error!\n");
return 0;
}
nNum=nNumber%nBase;//先将待转换数组计算一次余数和商,下面的循环也是计算待转换数的余数和商,但为了计算方便,将
nNum=nNumber/nBase;//第一次的计算放到循环外面
for (i=1;i《32;i++)
{
temp=nNum;
nNum=temp%nBase;
nNum=temp/nBase;
if (nNum》=nBase)
continue;//如果当前位的数字大于进制数,那么不执行下面的语句,重新进行循环条件的判断,是否执行下一次循环
else break;//如果当前数字小于进制数,那么说明计算完毕
}
/************************************************/
for (i=31;i》=0;--i)//逆序遍历nNum这个数组,当找到第一个不为0的元素时停止,并把它的位置用nNotZero记录
{
if(nNum!=0)
{
nNotZero=i;
break;
}
}
/*******************************
这一部分为镜像思想
******************************/
for(i=nNotZero;i》=0;--i)
{
for (j=0;j《37;++j)
{
if (nNum)
{
chNum;//将nNum的元素经镜像处理后逆序存入chNum数组
break;
}
}
}
printf("\n10进制转成%d进制后是:",nBase);
printf("%s\n",chNum);
return 0;
}

更多文章:
javac不可映射字符(java 编译出现GBK的不可映射字符,为什么会这样,之前一直都没问题的)
2025年10月3日 17:30
justified是什么意思英语(请问:justified for 是什么意思,是固定搭配吗)
2026年7月14日 04:00
security设置(惠普电脑HPClientSecurity如何设置禁止访问1394设备)
2026年7月27日 21:00
大佬们,这个游戏怎么玩啊?你知道上古卷轴为什么一直被叫老滚吗 直到我的膝盖中
2025年5月26日 21:00
关于php的参考文献书籍类(php相关的英文参考文献有哪些高分求解!!)
2025年8月1日 07:15
允许null值什么意思(数据库ssms允许null值为什么是非空的意思)
2026年8月4日 23:30















