c的两个半问题

C语言实现半定规划(Semidefinite Programming, SDP)算法 半定规划(Semidefinite Programming, SDP)是一种优化问题的数学模型,它扩展了线性规划的概念,允许在约束条件和目标函数中包含半正定矩阵的性质。在C语言编程环境中,虽然C语言本身并不直接支持半定规划的求解,但可以通过调用相应的数学库或优化工具包来实现半定规划问题的建模和求解。 阅读详情
第一个问题.我自己临时修复了.不过不好用.有的时候可以.有的时候不行.我和同学公认的解决方案是那个地方用C++写.问题在最后的我用的是%s 他是%c这个是对文件异或加密的解密程序.要快速到后面输入个错误密码就可以了.中间的具体过程不用去关心.我只关心后面的scanf为啥有的时候没法用?
#include<stdio.h>
//#include<iostream.h>
#include<stdlib.h>
#define ALLOCATE 1000
#define INCREMENT 1000000
int main()
{FILE *fp;
char *a=(char *)malloc(sizeof(char)* ALLOCATE );
char *p;
long i=0,k,j,size=ALLOCATE;
char c,ch='y',h1;
fp=fopen("2.avi","rb");
if(!fp)
{printf("can not open the file/n");
exit(-1);}
while(ch=='y')
{printf("请输入密码:");
scanf("%i",&j);
if(j==123)
 {
 srand(j);
 c=fgetc(fp);
 while(!feof(fp))
  {
  if(i==size)
   {
   p=(char *)malloc(sizeof(char)*(size+INCREMENT));
   for(k=0;k<size;k++)
   p[k]=a[k];
   a=p;
   size=size+INCREMENT;
   }
   h1=rand();
   h1=h1^c;
   a[i]=h1;
   i++;
   c=fgetc(fp);
  }//endwhile(!feof(fp))
  fp=fopen("2.avi","wb");
  for(k=0;k<=i-1;k++)
  fputc(a[k],fp);
  printf("解密完成!/n");
  fclose(fp);
  delete a;
  exit(1);
 }//end if(j==123)
else
 {
   //cout<<"密码错误!!是否继续尝试(y/n):";
   //ch=getchar();
   printf("密码错误!!是否继续尝试(y/n):");
  //cin>>ch;
   //scanf("%c",&ch);
   scanf("%s",&ch);
 }
}
system("PAUSE");
return 0;
}
 
第二个问题是我用阶梯法解奇幻方调整过程.调整部分我没有写完.在测试的时候原始数组可以输出.后面的不能输出.这个不知道原因.第一个for的循环是输出阶梯法的数组.
0       0       0       0       5       0       0       0       0零
0       0       0       4       0       10      0       0       0一
0       0       3       0       9       0       15      0       0二
0       2       0       8       0       14      0       20      0三
1       0       7       0       13      0       19      0       25四
0       6       0       12      0       18      0       24      0五
0       0       11      0       17      0       23      0       0六
0       0       0       16      0       22      0       0       0七
0       0       0       0       21      0       0       0       0    八  
这个是第一个输出的图.
这个是要求输出的图.但是它就是没有输出.开始调整了一边.我想看看效果.没有效果
0       0       0       0       0       0       0       0       0零
0       0       0       0       0       10      0       0       0一
0       0       3       16      9      22       15      0       0二
0       0       20       8       21     14      2       0      0三
0       0       7       25       13      1       19      0       0四
0       0       24       12      5       18      6       0      0五
0       0       11      4       17      0       23      0       0六
0       0       0       0      0        0      0       0       0七
0       0       0       0       0      0       0       0       0    八 
 
 
# include "stdio.h"
void main()
{
 int i,j,x,y;
 int a[9][9]={0};//总数组.
 int hang=4,lie=0;//行和列
 int ljq1=0;//计数器
 int k=1;//赋值的累加
     do //输入模块 混合调整模块
  {//调度算法
  a[hang][lie]=k;//保障赋值.从1到n^2
  ljq1++;
  if (ljq1==5) //计数器归零.想办法跳转.
  {
  hang+=5;
  lie-=3;
  ljq1=0;
  k++;
  continue;
  }
  hang--;
  lie++;
  k++;
 }while (k!=26);//end输入模块
 for(hang=0;hang<9;hang++)//a数组输出模块
 {
  for (lie=0;lie<9;lie++)
  {
  printf("%d/t",a[hang][lie]);
  }
  printf("/n");
 }//end a数组输出模块
 
 printf("123/n");
   //调整模块
 //列调整一
 for (i=0;i<3;i++)
 {
 for (j=2;j<8;j++)
  {
  if (0==a[i][j]) continue;
  else{
   printf("3/n");
   for (x=6;x>1;x++)
   { printf("*/n");
    if (a[j][x]==0)
    {
    a[j][x]=a[i][j];
    }
  }
  }
  }
 }
  printf("13/n");
 //列调整二
 for (i=7;i<9;i++)
 {
 for (j=2;j<8;j++)
  {
  if (0==a[i][j]) continue;
  else{
   
   for (x=6;x>1;x++)
    if (a[j][x]==0)
    {
    a[j][x]=a[i][j];
    }
   }
  }
 }
 printf("1/n");
 for(hang=0;hang<9;hang++)//a数组输出模块
 {
  for (lie=0;lie<9;lie++)
  {
  printf("%d/t",a[hang][lie]);
  }
  printf("/n");
 }
/** for(hang=0;hang<5;hang++)//c数组输出模块
 {
  for (lie=0;lie<5;lie++)
  {
  printf("%d/t",c[hang][lie]);
  }
  printf("/n");
 }
**/
 
}
 
第三个在开始赋值的时候如果不赋值后面就悲剧了.直接弹出内存读写错误.
这里是l和k没有赋值.第一个是最小.直接输出.所以就悲剧了.这个是数组中最大的和最小的换位子
#include "stdio.h"
void main()
{
 static int a[10]={1,2,3,4,5,10,9,8,7,6};
 int max=0,min=0,k=0,j=0,l=0,i=0;//这里有问题.
 printf("the number 1 is:/n");
 for(i=0;i<10;i++)
 printf("%4d",a[i]);
 printf("/n");
 max=a[0];
 min=a[0];
 for(i=0;i<9;i++)
  if(max<a[i+1])
  {
   max=a[i+1];
   k=i+1;
  }
 for(j=0;j<9;j++)
  if(min>a[j+1])
  {
   min=a[j+1];
   l=j+1;
   //printf("l=%d",&l);
  }
 a[l]=max;
 a[k]=min;
 printf("/nthe number2 is:/n");
 for(i=0;i<10;i++)
  printf("%4d",a[i]);
 printf("/n");

}
 
B-极小矩阵问题:从C*-代数到特征值优化的算法实践 在矩阵优化与算子理论中,特征值优化是一类核心问题,旨在寻找满足特定约束条件下矩阵谱范数(最大特征值)的最小值。其基本原理常涉及在给定子空间矩约束下,通过调整矩阵结构来控制其谱分布。这类问题的技术价值在于,它为处理不完全信息下的稳健估计提供了数学框架,广泛应用于量子态层析、压缩感知和金融风险建模等领域。具体到B-极小矩阵问题,它要求矩阵在目标子空间上的投影固定,同时最小化其谱范数,这自然地导向了半定规划松弛和迭代特征值缩放等算法。通过结合C*-代数的理论工具与工程实践中的数值方法,可以有效逼近这类非光滑优化问 阅读详情

相关推荐

C语言:最大子数组和问题——分治策略

给出一个数组,要求计算出它的子数组和的最大值采用分治策略,最大的子数组有三种情况:一,在中间项的左侧;二,在中间项的右侧;三,跨越中间项。然后再此三种情况下找到最值;#include&lt;stdio.h&gt;int FindChileArray(int arr[],int low,int high);int FindChileArray_coenter(int arr[],int low,in...

u012953338的专栏 3400

C语言 while(feof(fp)){}多循环一次解决方案

不用feof() 使用fgetc(fp)==EOF判断是否进行x

u013402772的专栏 2988

31、多级随机设施选址与半在线调度算法研究

本文研究了k级随机设施选址问题和两级并行相同机器下的半在线调度问题。针对k-SFLP,提出了一种基于原始-对偶框架的7-近似组合算法,通过合理的设施开启与客户分配规则,实现了对设施成本和连接成本的有效控制。在半在线调度方面,分别考虑已知最优离线值C*和最大处理时间pmax的情形:设计了竞争比为3/2的最优算法Gos-Opt,并提出了竞争比为(√5+1)/2的算法Gos-Max。理论分析与算法设计为相关领域的实际应用提供了有力支持,并展望了未来在近似比优化、更多半在线信息融合及多机器多等级扩展方向的研究路径。

nn3456的博客 59

H半质数C语言,半质数优化有关问题

半质数优化问题本帖最后由 a120705230 于 2014-02-17 23:27:37 编辑//质数是大家熟知的概念,我们定义一个半质数的概念:如果一个数恰好是两个质数的乘积(可以相同),//则称它为半质数。前几个半质数是4,6,9,10,14,15,21,22,25,26。我们的问题是,输入两个正整数x<=y,//问[x,y]之间有多少个半质数?输入:x,y输出...

weixin_39875516的博客 425

Fluent DPM模型保姆级教程:三通管颗粒流动模拟,从网格导入到轨迹图生成

本文提供Fluent DPM模型在三通管颗粒流动模拟中的保姆级教程,涵盖从网格导入到轨迹图生成的全流程。通过详细步骤和参数设置,帮助用户掌握DPM模型在颗粒流动模拟中的关键技巧,适用于化工、能源等领域的工程应用。

weixin_30615767的博客 579

信道估计之MMSE算法

信道估计之MMSE算法前言MMSE估计的原理总结 前言        前篇分析了LS信道估计算法,也说明了由于没有考虑SNR的影响,所以LS算法不适合在低信噪比的情况下使用。本篇来学习信道估计的另外一种常用的算法–MMSE。        为什么说LS没有考虑噪声大小的情况呢,因为LS算法使用的是实际观测量与估计观测量的误差,这并不能精确的代表估计量的真值与估计值的误

大白的博客 2万+

C语言:1孩半问题

题目:   一孩半,又称独女户二胎,即中国大陆部分农村的一项计划生育政策,第一胎是女孩的夫妻可以生育第二个子女。如果第二胎有n%人工性别选择干预(选择男孩),试问男女比例为多少。(10分)题目内容:   一孩半,又称独女户二胎,即中国大陆部分农村的一项计划生育政策,第一胎是女孩的夫妻可以生育第二个子女。如果第二胎有n%人工性别选择干预(选择男孩),试问男女比例为多少? 输入n,作为n% 输...

weixin_30652491的博客 1072

解决com.kingbase8.util.KSQLException: This _connection has been closed.

一个消息管理系统,系统采用kingbase8数据库,数据库采用单体模式,后台应用也采用springboot单体模式。系统正式上线后,出现几个JDBC响应的异常信息: com.kingbase8.util.KSQLException: An I/O error occurred while sending to the backend. java.net.SocketTimeoutException: Read timed out.

qq_38127559的博客 2757

【LeetCode】 2717.半有序排列 【案例讲解】

【LeetCode】 2717.半有序排列 【案例讲解】

W9987的博客 776

硬件工程师入门进阶,一文搞懂,看这篇就对了

每家公司的datasheet都有严格的规范,及独特的风格,有时候还会穿插一些原理性的介绍,比如ADI公司的一些ADC/DAC器件资料里面,还会包含AD/DA转换的原理性讲解内容,Datasheet既可以是我们设计上的好帮手,也是学习的好资料。在出货量大的产品中,尽量减少物料种类,比如开头说的,1%的电阻不得不用,那么5%的替换成1%的,物料种类就减少一种,量就大了,能不能争取更优的价格呢?如果说前面学的是内功,那这一关,是招式、是工具的使用,原理图和PCB设计都有对应的工具,教程也很多,且比较容易上手。

一路带飞的博客 5万+

国产操作系统应用迁移与适配

了解国产操作系统的背景及意义

2301_77609559的博客 2680

POJ 1279 Art Gallery 半平面交求多边形核

第一道半平面交,只会写N^2。 将每条边化作一个不等式,ax+by+c>0,所以要固定顺序,方便求解。 半平面交其实就是对一系列的不等式组进行求解可行解。 如果某点在直线右侧,说明那个点在区域内,否则出现在左边,就可能会有交点,将交点求出加入。 //#pragma comment(linker, "/STACK:16777216") //for c++ Compiler #in...

weixin_30871701的博客 177

【XCharts插件】5-2、从Excel中读取数据并更新图表案例(v3.0)

XCharts插件是一款基于UGUI的功能强大、易用、参数可配置的数据可视化图表插件。【Unity3D插件】XCharts插件完全教程《全网最全》-专栏文章目录【XCharts插件】5-1、从Json中读取数据并更新图表案例(v3.0)介绍了如何从Json文件中读取数据,并更新表格,这篇文章就介绍如何从Excel中读取数据,并更新图表吧。

优快云博客专家,Unity3D高级软件工程师,《Unity 3D从入门到实战》作者。 1275

求解半正定规划问题的软件工具包CSDP

CSDP是解决半正定规划问题的软件包。CSDP is a software package for solving semidefinite programming pr...

weixin_42825609的博客 1244

科研级YOLOv8 Neck革新:BiFPN双向特征金字塔赋能,让多尺度融合更高效的实战指南

在文件夹下新建BiFPN.py,将上述BiFPNLayer和BiFPN类的代码写入其中。这一步是为了让YOLOv8的代码架构能识别我们的自定义Neck模块。

m0_64661770的博客 153

YOLO26改进策略【卷积层】| CVPR 2024 可变形卷积 v4(DCNv4)无界权重提表达 + 线程合并降冗余,强化模型收敛速度

DCNv4(Deformable Convolution v4)是一种专为广泛视觉应用设计的高效算子,它对DCNv3进行了关键改进,有效解决了DCNv3存在的速度慢和表达能力受限等问题。

Limiiiing的博客 695

c语言切蛋糕题编程,切蛋糕问题.ppt

切蛋糕问题设计者:王繁村 指导老师:胡瑞鹏 掌握所学语言程序设计的方法,熟悉 所学语言的开发环境及调试过程,熟悉所学语言中的数据类型,数据结构、语句结构、运算方法,巩固和加深对理论课中知识的理解,提高学生对所学知识的综合运用能力。通过综合设计要求达到下列基本技能: 1.培养查阅参考资料、手册的自学能力,通过独立思考深入钻研问题,学会自己分析、解决问题。 2.通过对所选题目方案分析比较,确立方案,...

weixin_33977645的博客 1178

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

自举悬浮驱动电源结构,半桥电源中驱动芯片常用到自举悬浮充电电源,悬浮地,海信电视,Buck电路中浮动管如何被驱动

https://zhuanlan.zhihu.com/p/463897895?utm_id=0

二进制模----细微行动改变影响世界 4606

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

数据类设计_图片类设计之3_半规则图类设计(前端架构基础)

学的东西多了,要想办法用出来.C和C++是偏向底层的语言,直接与数据打交道.尝试做一些和数据方面相关的内容什么是半规则图?笔者看见了一些似乎规则又不是太规则的图形,例如带圆角的矩阵,在页面上找一个圆角框为了看得清楚一点,自己画一个类似圆角矩阵的形状,win10搜索栏输入mspaint,打开自带画图软件,画一个下面的形状,并填充.在计算机中是如何表示的呢?尝试给出定义.`思考:类型定义也不是唯一的,找一种比较简洁的.圆角矩形和之前的矩阵类看起来也差不多,所以借鉴一下,用点的二维数组。

jllws1的博客 594

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

C++基础方面与C语言的区别、C++入门基础知识-空间开拓、全(半)缺省参数函数、引用、类和对象方面简单说明(保姆级)

在struct(以下省略“C语言”)中,结构体成员包括变量、常量等,而在class中新增“成员函数”,且成员函数不计入类的空间大小!例如。

deer4的博客 819

CF1196C

CF1196C 题目 CF1196C 分析 模拟划线法:图有点丑 画红色的部分就是不能到达的部分,初始化 x[0]=−105,x[1]=105x[0] = -10^5,x[1] = 10^5x[0]=−105,x[1]=105 作为 xxx 方向的边界,y[0]=−105,y[1]=105y[0] = -10^5,y[1] = 10^5y[0]=−105,y[1]=105 作为 y...

strategist_614的博客 497

【一年半以后复习】从头学习刘汝佳

一年半没有碰C了,真是非常想念。终于有时间了,忘得差不多了。现在跟着刘汝佳再从头学一遍吧 第一章 练习题 1、数据类型和数据输入格式 int和long都是用32位来存储最大值和最小值分别为2147483647(109), -2147483648; long long 是用64位来存储最大值和最小值分别为9223372036854775807(1018),-92233720368547

weiwanshu的专栏 453

XTU,C语言,Triangle

题目描述 在单位半径的半圆弧上的一个点C,已知其x坐标,求三角形△ABC的面积。 输入 第一行是一个整数T(1≤T≤1000),表示样例的个数。 以后的每一行是一个浮点数x(−1≤x≤1),表示点C的x坐标。 输出 每行输出一个样例的结果,保留3位小数。 样例输入 2 0 0.5 样例输出 比较简单的一道题,要注意坐标,结果不是整型,利用对称性可快速解出 #include <stdio.h> #include <math.h> int main()..

SY_XLR的博客 818

求助新人学C和 C++

  8.魔方阵 8 1 6

HaPpY_1314的专栏 804

小米蓝牙耳机使用说明_小米首款无线半入耳分体蓝牙耳机小米 Air 2 使用体验报告...

终于是盼到小米推出半入耳的无线分体式蓝牙耳机了,首先来看下外包装,双色设计,上半部分是产品图,下半部分是产品名称,这是小米除手机外产品一贯的包装风格耳机盒采用椭圆形的外观设计,上下平底,正面有电源灯与大部分品牌不同,小米 Air 2的电源键位于机身右侧,并且有明显凹陷,非常轻松的就能找到位置机身底部是充电接口,接口采用的是Type-C(这点好评,非常方便,毕竟目前市面上的电子产品都开始大...

weixin_39618574的博客 1427

c语言 465串口编程,用C语言编写串口程序

在当今,流行的编程软件种类繁多,它们编程方便、易于维护,但是在与硬件直接打交道和编制系统软件时却束手无策,于是C语言就有了用武之地。C语言作为汇编语言与高级语言之间的一种过渡语言,兼有汇编语言的高效和高级语言的方便。在通讯中,为了保证行运安全可靠,标准的串行口必须具有许多握手信号和状态信息。这是因为通讯的各个计算机CPU速度不一样(这会导致“错帧”)以及发送机发送数据速度比接收机接收速度快(这会导...

weixin_28863779的博客 197
上一篇: 数的整除之伪费马小定理的判定
下一篇: 程序员的十层楼(转优快云)
blacksapper
博客等级 码龄19年 20粉丝 81原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值